Item API
An item is a page that appears in a test. Items may be scored questions (for example, Multiple Choice items), non-scored surveys (for example, Likert items), or basic pages (for example, Introduction, Information, and Finish Pages).
This article explains what calls can be made to the Surpass API using the Item resource.
Import this API into your Postman Workspace
In This Article
Items
The Item API resource can be used to list, retrieve, create, update, and delete question and survey items. For information on basic pages, read BasicPage API.
To learn more about items, see the Item Authoring section of the Surpass documentation.
Listing items
Send a request to the endpoint to retrieve a list of items. Refer to the available parameters to influence the response. No request body is required.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
top |
query OPTIONAL |
/api/v2/Item?$top={top} |
Defines number of responses to return when paging a response, where {top} is a number between 1 and 40. |
skip |
query OPTIONAL |
/api/v2/Item?$skip={skip} |
Defines how many responses to skip when paging a response, where {skip} is a number that should not exceed the total number of responses. |
filter |
query OPTIONAL |
/api/v2/Item?$filter={filter} {operator} {value} |
Filters results, searching for an exact match or for the data to contain a defined value. For an exact match: {filter} is one of name, itemType, subject/id, subject/reference, status; {operator} is eq (equal to); and {value} is the string or enumeration the filter query looks for an exact match for in the request. |
includeDeleted |
query OPTIONAL |
/api/v2/Item?includeDeleted={Boolean} |
Determines whether to include deleted items in the response, where {Boolean} is one of true or false. |
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the information in either JSON or XML format as requested.
{
"count": 5190,
"top": 10,
"skip": 0,
"pageCount": 519,
"nextPageLink": "https://{your Surpass instance}.surpass.com:443/api/v2/Item?$skip=10",
"prevPageLink": null,
"response": [
{
"id": 1,
"type": "MultipleChoice",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/1"
},
{
"id": 2,
"type": "DragAndDrop",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/2"
},
{
"id": 3,
"type": "ShortAnswer",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/3"
},
{
"id": 4,
"type": "MultipleChoice",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/4"
},
{
"id": 5,
"type": "HotSpot",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/5"
},
{
"id": 6,
"type": "ShortAnswer",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/6"
},
{
"id": 7,
"type": "MultipleResponse",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/7"
},
{
"id": 8,
"type": "SelectFromAList",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/8"
},
{
"id": 9,
"type": "Likert",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/9"
},
{
"id": 10,
"type": "VoiceCapture",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/10"
}
],
"errors": null,
"serverTimeZone": "GMT Standard Time"
}
Response schema
The response schema contains a description of every property that can be returned for this endpoint.
count integer
Details how many items there are in total.
top integer
Details number of items returned in the response.
skip integer
Details how many items were skipped to display those in the response.
pageCount integer
Details how many pages of items there are.
nextPageLink string
The endpoint to call the next page of items. If null, the response is the last page of items.
prevPageLink string
The endpoint to call the previous page of items. If null, the response is the first page of items.
response array
Contains the rest of the response.
id integer
The item’s unique identifier.
type enumeration
The item type, which can be one of MultipleChoice, MultipleResponse, EitherOr, NumericalEntry, FillInTheBlank, ShortAnswer, Essay, SelectFromAList, MatchingBoxes (Extended Matching questions), FileAttach, DragAndDrop, EquationEntry, HotSpot, Spreadsheet, VoiceCapture, CqtItem (Custom Question type questions), FractionEntryItem, MultipleChoiceSurvey, MultipleResponseSurvey, or Likert.
href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
errors string
Information about any errors that occurred during the request.
serverTimeZone enumeration
The timezone of the server sending the response.
Retrieving item information
Send a request to the endpoint to retrieve information for a specific item using its ID. No request body is required.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
id |
path OPTIONAL |
/api/v2/Item/{id} |
Returns information for the specified item, where {id} is the item’s unique identifier. |
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the information in either JSON or XML format as requested.
{
"count": null,
"top": null,
"skip": null,
"pageCount": null,
"nextPageLink": null,
"prevPageLink": null,
"response": [
{
"subject": {
"id": 1,
"reference": "Subject1",
"href": "https://{your Surpass instance}.surpass.com/api/v2/Subject/1",
"name": "Geography Subject"
},
"folder": null,
"itemSet": null,
"itemType": "Question",
"name": "Geography MCQ1",
"itemMajorVersion": 3,
"itemVersion": 0,
"deleted": false,
"publishId": "5001P1",
"questionText": "<p>What is the capital of France?</p>",
"htmlText": null,
"mathMl": null,
"assistiveMedia": null,
"mark": 1,
"citations": null,
"seedUsageCount": null,
"seedPValue": null,
"status": "Live",
"itemPurpose": "Summative",
"markingType": "Computer",
"markingSchemeFileId": null,
"markingSchemeFileName": null,
"comment": "",
"generalFeedback": null,
"correctFeedback": null,
"incorrectFeedback": null,
"mediaItems": [
{
"id": 1
}
],
"sourceMaterials": [],
"stemComponents": [
{
"id": 0,
"text": "<p>What is the capital of France?</p>",
"mathMl": null,
"media": null
}
],
"dragDropQuestions": null,
"multipleChoiceQuestions": [
{
"answerWidthRatio": "50/50",
"optionList": {
"options": [
{
"assistiveMedia": null,
"id": 4,
"contentType": "RichText",
"text": "<p><span style="font-size:14px">Paris</span></p>",
"htmlText": null,
"mathMl": null,
"mediaItem": null,
"answerColumns": [
{
"text": "<p><span style="font-size:14px">Paris</span></p>",
"mathMl": null,
"media": null
}
],
"correct": true,
"label": null,
"rationaleText": null,
"exclusiveOption": false
},
{
"assistiveMedia": null,
"id": 5,
"contentType": "RichText",
"text": "<p><span style="font-size:14px">London</span></p>",
"htmlText": null,
"mathMl": null,
"mediaItem": null,
"answerColumns": [
{
"text": "<p><span style="font-size:14px">London</span></p>",
"mathMl": null,
"media": null
}
],
"label": null,
"rationaleText": null,
"exclusiveOption": false
},
{
"assistiveMedia": null,
"id": 6,
"contentType": "RichText",
"text": "<p><span style="font-size:14px">Madrid</span></p>",
"htmlText": null,
"mathMl": null,
"mediaItem": null,
"answerColumns": [
{
"text": "<p><span style="font-size:14px">Madrid</span></p>",
"mathMl": null,
"media": null
}
],
"label": null,
"rationaleText": null,
"exclusiveOption": false
}
]
},
"randomise": true,
"addLabelsToOptions": false,
"markType": "Standard",
"tableOptionsHtml": null
}
],
"multipleResponseQuestions": null,
"essayQuestions": null,
"shortAnswerQuestions": null,
"eitherOrQuestions": null,
"numericalEntryQuestions": null,
"fillInTheBlankQuestions": null,
"selectFromAListQuestions": null,
"voiceCaptureQuestions": null,
"likertQuestions": null,
"fileAttachQuestions": null,
"extendedMatchingQuestions": null,
"tbsQuestions": null,
"allowOpenImageInPopup": false,
"mediaLayout": "RightAnswer",
"itemTagValues": [
{
"id": 1,
"href": "https://{your Surpass instance}.surpass.com/api/v2/ItemTagValue/1"
},
{
"id": 2,
"href": "https://{your Surpass instance}.surpass.com/api/v2/ItemTagValue/2"
}
],
"itemSetTagValues": null,
"enemyItems": [],
"secondaryEnemyItems": [],
"sectionEnemyItems": [],
"secondarySectionEnemyItems": [],
"tools": [],
"owner": {
"id": 1,
"reference": "User1",
"href": "https://{your Surpass instance}.surpass.com/api/v2/User/1"
},
"comments": [],
"sharedWith": [],
"standardLists": [
{
"id": 1,
"reference": "ItemList1",
"href": "https://{your Surpass instance}.surpass.com/api/v2/ItemList/1"
}
],
"publishStatus": 2,
"language": {
"name": "English (UK)",
"code": "en"
},
"languageVariants": [],
"id": 1,
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/1"
}
],
"errors": null,
"serverTimeZone": "GMT Standard Time"
}
Response schema
The response schema contains a description of every property that can be returned for this endpoint.
count integer
Details how many items there are in total. This is null because the information retrieved is for a specific item.
top integer
Details number of items returned in the response. This is null because the information retrieved is for a specific item.
skip integer
Details how many items were skipped to display those in the response. This is null because the information retrieved is for a specific item.
pageCount integer
Details how many pages of items there are. This is null because the information retrieved is for a specific item.
nextPageLink string
The endpoint to call the next page of items. This is null because the information retrieved is for a specific item.
prevPageLink string
The endpoint to call the previous page of items. This is null because the information retrieved is for a specific item.
response array
Contains the rest of the response.
subject object
Contains the subject that the item is in.
subject/id integer
The subject’s unique identifier.
subject/reference string
The subject’s unique reference code.
subject/href string
The endpoint to call the subject’s information, such as /api/v2/Subject/{id} where {id} is the subject’s unique identifier.
subject/name string
The subject’s name.
folder object
Contains the folder that the item is in. If null, the item is not in a folder.
folder/id integer
The folder’s unique identifier.
folder/href string
The endpoint to call the folder’s information, such as /api/v2/Folder/{id} where {id} is the folder’s unique identifier.
folder/position integer
The position of the item within the folder.
itemSet object
Contains the item set that the item is in. If null, the item is not in an item set.
itemSet/id integer
The item set’s unique identifier.
itemSet/href string
The endpoint to call the item set’s information, such as /api/v2/ItemSet/{id} where {id} is the item set’s unique identifier.
itemType enumeration
Determines whether the item is a Question or a Survey item.
name string
The item’s name.
itemMajorVersion integer
The item’s major version.
Whenever an item is changed and saved, Surpass creates a new item version. Items can have major versions (whole integers like 1, 2, and 3) and minor versions (non-integer decimals like 1.1, 1.2, and 1.3). A new major item version is created every time there are saved changes to the item owner or workflow status. Any changes made to live items create a new major version.
itemVersion integer
The item’s minor version. See the itemMajorVersion object above for more information.
deleted Boolean
Determines whether the item is in its subject’s recycle bin.
publishId string
The item’s unique identifier issued at the point of creation and used when the item is published to Test Creation. It is a combination of your Surpass instance’s unique two digit code (made up of the last two digits of every keycode in your instance), the subject’s ID, and the item’s ID.
questionText string
The first question stem block in HTML format. If the item has multiple question stem blocks, see the stemComponents object. If null, the item does not have any question text.
htmlText string
The first question stem block in HTML format.
mathML string
If the first question stem block contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the item does not contain any formula.
assistiveMedia object
Contains any assistive media if it has been attached to the first question stem block. If null, the item does not contain any assistive media.
assistiveMedia/id integer
The assistive media’s unique identifier.
assistiveMedia/href string
The endpoint to call the assistive media’s information, such as /api/v2/Item/{id}/AssistiveMedia/{id} where {id} is the item’s unique identifier and {id} is the assistive media’s unique identifier.
mark integer
The item’s assigned mark.
citations string
Any citations added to the item in HTML format. If null, the item does not have any citations.
seedUsageCount integer
The item’s seeded usage count, which is an integer assigned to the item when migrating item statistics from another system. If null, the item does not have a seeded usage count.
seedPValue integer
The item’s seeded p value, which is an integer assigned to the item when migrating item statistics from another system. If null, the item does not have a seeded p value.
status enumeration
The item’s workflow status. The default workflow statuses are Draft, To Review, Reviewed, Live, and Withdrawn. Every item starts at Draft and must be set to Live before being able to be added to a test form. Custom workflow statuses can also be created and assigned to items.
itemPurpose enumeration
The item’s assigned purpose. This can be either Summative, Formative, or Unspecified. If 3 is returned, the item is a sample item.
markingType enumeration
Determines whether the item is set to be Computer or Human-marked.
markingSchemeFileId integer
The mark scheme’s unique identifier. If null, the item does not have a marking scheme attached.
markingSchemeFileName string
The mark scheme’s file name. If null, the item does not have a marking scheme attached.
comment string
Any comment left on the item in text format. If blank, the item does not contain a comment.
generalFeedback object
Contains any general candidate feedback added to the item. If null, the item does not contain any feedback.
generalFeedback/text string
The feedback text in HTML format.
generalFeedback/htmlText string
The feedback text in HTML format.
generalFeedback/mediaItems array
Contains any media added to the feedback.
generalFeedback/mediaItems/id integer
The media’s unique identifier.
generalFeedback/sourceMaterials array
Contains any source material added to the feedback.
generalFeedback/sourceMaterials/id integer
The source material’s unique identifier.
correctFeedback object
Contains any correct candidate feedback added to the item. If null, the item does not contain any feedback.
correctFeedback/text string
The feedback text in HTML format.
correctFeedback/htmlText string
The feedback text in HTML format.
correctFeedback/mediaItems array
Contains any media added to the feedback.
correctFeedback/mediaItems/id integer
The media’s unique identifier.
correctFeedback/sourceMaterials array
Contains any source material added to the feedback.
correctFeedback/sourceMaterials/id integer
The source material’s unique identifier.
incorrectFeedback object
Contains any incorrect candidate feedback added to the item. If null, the item does not contain any feedback.
incorrectFeedback/text string
The feedback text in HTML format.
incorrectFeedback/htmlText string
The feedback text in HTML format.
incorrectFeedback/mediaItems array
Contains any media added to the feedback.
incorrectFeedback/mediaItems/id integer
The media’s unique identifier.
incorrectFeedback/sourceMaterials array
Contains any source material added to the feedback.
incorrectFeedback/sourceMaterials/id integer
The source material’s unique identifier.
mediaItems array
Contains any media embedded on the item. If null, the item does not contain any embedded media.
mediaItems/id integer
The media’s unique identifier.
sourceMaterials array
Contains any source material attached to the item. If null, the item does not contain any source material.
sourceMaterials/id integer
The source material’s unique identifier.
stemComponents array
A collection of text, images or equations that form each question stem.
stemComponents/text string
The question stem’s text in HTML format.
stemComponents/id integer
The question stem’s unique identifier.
stemComponents/mathML string
If the question stem contains any formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the item does not contain any formula.
stemComponents/media object
Contains any media in the question stem for items in Mixed subjects.
stemComponents/media/id integer
The media’s unique identifier.
dragDropQuestions array
Contains information relating to the Drag and Drop question type.
A Drag and Drop question consists of text-based “drag options” that candidates must place in the appropriate “drop zones”. The available drag options might include distractors that are not associated with any drop zone.
If null, the item is not a Drag and Drop question.
dragDropQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled.
dragDropQuestions/maxItemsPerZoneType enumeration
Determines whether the maximum number of drag options per drop zone is Equal to maximum correct drag options (MaxCorrect), Equal to total amount of drag options (TotalCount), or a Custom (Custom) amount.
dragDropQuestions/customItemsPerZone integer
If the dragDropQuestions/maxItemsPerZoneType object is Custom, determines how many drag options per zone.
dragDropQuestions/type enumeration
Determines whether the item is a Standard or Advanced (HTML subjects only) Drag and Drop question.
dragDropQuestions/markType enumeration
Determines whether the marking is Standard, Balanced, or Weighted (Standard Drag and Drop questions in HTML subjects only).
dragDropQuestions/dropZones array
Contains the drop zones’ information.
dragDropQuestions/dropZones/id integer
The drop zone’s unique identifier.
dragDropQuestions/dropZones/title string
The drop zone’s title.
dragDropQuestions/dropZones/dragOptions array
Contains the drag options’ information.
dragDropQuestions/dropZones/dragOptions/id integer
The drag option’s unique identifier.
dragDropQuestions/dropZones/dragOptions/text string
The drag option’s text in HTML format. If null, the item is an Advanced Drag and Drop question.
dragDropQuestions/dropZones/dragOptions/mediaItem object
Contains any media attached to the drag option.
dragDropQuestions/dropZones/dragOptions/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/dropZones/x integer
The x coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/y integer
The y coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/height integer
The drop zone and drag options’ height in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/width integer
The drop zone and drag options’ width in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/additionalOptions array
Contains any additional answer options information if the item is a Standard Drag and Drop question.
dragDropQuestions/additionalOptions/options array
Contains the additional drag options.
dragDropQuestions/additionalOptions/options/id integer
The additional drag option’s unique identifier.
dragDropQuestions/additionalOptions/options/text string
The additional drag option’s text in HTML format.
dragDropQuestions/additionalOptions/options/mediaItem object
Contains any media attached to the additional drag option.
dragDropQuestions/additionalOptions/options/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/customMarks array
Contains the custom marks information if the item is a Standard Drag and Drop question with weighted marking enabled.
dragDropQuestions/customMarks/dragItem integer
The drag option’s unique identifier.
dragDropQuestions/customMarks/dropZone integer
The drop zone’s unique identifier.
dragDropQuestions/customMarks/mark integer
The custom mark assigned to the drag option and drop zone combination.
dragDropQuestions/backgroundImage array
Contains the background image’s information if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/backgroundImage/mediaItem array
Contains the media used for the background image’s information.
dragDropQuestions/backgroundImage/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/backgroundImage/height integer
The background image’s height in PX.
dragDropQuestions/backgroundImage/width integer
The background image’s width in PX.
multipleChoiceQuestions array
Contains information relating to the Multiple Choice question type.
A Multiple Choice question offers candidates a set of possible answers to a problem. One of these answers is the correct answer and the others are plausible but incorrect answers (also known as “distractors”). Candidates can select one answer option as their response.
If null, the item is not a Multiple Choice question.
multipleChoiceQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
multipleChoiceQuestions/optionList object
Contains the answer options’ information.
multipleChoiceQuestions/optionList/options array
Contains each answer option’s information.
multipleChoiceQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information. If null, the answer option does not contain any assistive media.
multipleChoiceQuestions/optionList/options/assistiveMedia/id integer
The assistive media’s unique identifier.
multipleChoiceQuestions/optionList/options/assistiveMedia/href string
The endpoint to call the assistive media’s information, such as /api/v2/Item/{id}/AssistiveMedia/{id} where {id} is the item’s unique identifier and {id} is the assistive media’s unique identifier.
multipleChoiceQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleChoiceQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
multipleChoiceQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this only returns the text in the first column.
If set to Answer options as a table (HTML subjects only), the first row is returned separated by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleChoiceQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the content type is not MathML.
multipleChoiceQuestions/optionList/options/mediaItem object
Contains any media used as the answer option. If null, the content type is not Image.
multipleChoiceQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. The first array returns information for the answer option in the first column regardless of the Layout options, but the second array contains the second column’s information if set to Two columns.
multipleChoiceQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), the first row is returned separated by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the answer option is not a formula.
multipleChoiceQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option. If null, the answer option is not an image.
multipleChoiceQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleChoiceQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleChoiceQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleChoiceQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleChoiceQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleChoiceQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
multipleChoiceQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery.
multipleChoiceQuestions/markType enumeration
Determines whether the Marking type for the question is Standard or Weighted.
multipleChoiceQuestions/tableOptionsHtml string
The answer options as a table in HTML format if the Layout option is set to Answer options as a table (HTML subjects only).
multipleResponseQuestions array
Contains information relating to the Multiple Response question type.
A Multiple Response question offers candidates a set of possible answers to a question. The options contain correct answers and plausible but incorrect answers (also known as distractors). Candidates can select multiple answer options as their response.
If null, the item is not a Multiple Response question.
multipleResponseQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
multipleResponseQuestions/optionList object
Contains the answer options’ information.
multipleResponseQuestions/optionList/options array
Contains each answer option’s information.
multipleResponseQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information. If null, the answer option does not contain any assistive media.
multipleResponseQuestions/optionList/options/assistiveMedia/id integer
The assistive media’s unique identifier.
multipleResponseQuestions/optionList/options/assistiveMedia/href string
The endpoint to call the assistive media’s information, such as /api/v2/Item/{id}/AssistiveMedia/{id} where {id} is the item’s unique identifier and {id} is the assistive media’s unique identifier.
multipleResponseQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleResponseQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
multipleResponseQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this only returns the text in the first column.
If set to Answer options as a table (HTML subjects only), the first row is returned separated by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleResponseQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the content type is not MathML.
multipleResponseQuestions/optionList/options/mediaItem object
Contains any media used as the answer option. If null, the content type is not Image.
multipleResponseQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. The first array returns information for the answer option in the first column regardless of the Layout options, but the second array contains the second column’s information if set to Two columns.
multipleResponseQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), the first row is returned separated by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the answer option is not a formula.
multipleResponseQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option. If null, the answer option is not an image.
multipleResponseQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleResponseQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleResponseQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleResponseQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleResponseQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleResponseQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
multipleResponseQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery.
multipleResponseQuestions/markType enumeration
Determines whether the Marking type for the question is Standard, Weighted, or Combination.
multipleResponseQuestions/combinations array
Contains the answer option combinations’ information if the Marking type is set to Combination.
multipleResponseQuestions/combinations/Id integer
The answer option combination’s unique identifier.
multipleResponseQuestions/combinations/Mark integer
The number of marks for the answer option combination.
multipleResponseQuestions/combinations/Title string
The name attributed to the answer option combination.
multipleResponseQuestions/combinations/Options array
Contains the information for the individual answer options that make up the answer option combination.
multipleResponseQuestions/combinations/Options/Id integer
The answer option’s unique identifier.
multipleResponseQuestions/combinations/Options/Text string
The answer option’s label.
multipleResponseQuestions/maxSelections integer
The maximum number of answer options the candidate can select. This is determined by the Maximum number of candidate selections setting, the options for which are Equal to correct options, No Limit, or Custom.
multipleResponseQuestions/partialMarks Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled (false) or not (true).
multipleResponseQuestions/tableOptionsHtml string
The answer options as a table in HTML format if the Layout option is set to Answer options as a table (HTML subjects only).
multipleResponseQuestions/exclusiveOptionEnabled Boolean
Determines whether the Exclusive Option setting is enabled, meaning there is an answer option that cannot be selected in conjunction with other answer options.
essayQuestions array
Contains information relating to the Essay question type.
An Essay question asks candidates to provide an extended written response to a prompt.
If null, the item is not an Essay question.
essayQuestions/enableTextFormatting Boolean
Determines whether the Enable text formatting for candidates setting is enabled, letting candidates use basic formatting tools when writing their response.
essayQuestions/maxCharacters integer
The maximum number of characters allowed for the candidate’s response.
essayQuestions/numberOfLines integer
The number of lines provided for the candidate’s response if the test is being delivered on-screen.
essayQuestions/displayCounter Boolean
Determines whether the Display word counter setting is enabled, letting candidates view their current word count when writing their response.
essayQuestions/numberOfLinesPerResponse integer
The number of lines provided for the candidate’s response if the test is being delivered on paper.
essayQuestions/wordCounterLabel string
The name of the word counter if essayQuestions/displayCounter is true.
essayQuestions/textDirectionMode integer
Determines the Answer Input Direction for candidates. 0 is Left to right and 1 is Right to left.
shortAnswerQuestions array
Contains information relating to the Short Answer question type.
A Short Answer question requires candidates to submit a word in response to a prompt.
If null, the item is not a Short Answer question.
shortAnswerQuestions/requireCaseSensitive Boolean
Determines whether the Require answer to be case-sensitive setting is enabled.
shortAnswerQuestions/limitCandidateResponse Boolean
Determines whether the Limit candidate response setting is enabled, restricting how many characters candidates can enter into the answer field.
shortAnswerQuestions/maxCharacterCount integer
The maximum number of characters candidates can enter into the answer field if shortAnswerQuestions/limitCandidateResponse is true.
If null, either the setting is disabled or the item is an Advanced Short Answer question. The maximum number of characters that candidates can enter for Advanced Short Answer questions is set at placeholder level.
shortAnswerQuestions/answerList object
Contains the correct answer information if the item is a Standard Short Answer question.
shortAnswerQuestions/answerList/answers array
The correct answer. Multiple correct answers are listed together.
shortAnswerQuestions/placeholderText string
The question and placeholder text in HTML format if the item is an Advanced Short Answer question.
shortAnswerQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct answers setting is enabled if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders array
Contains the placeholders’ information if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders/maxCharacterCount integer
Determines the maximum number of characters the candidate can enter into the placeholder if shortAnswerQuestions/limitCandidateResponse is true.
shortAnswerQuestions/placeholders/placeholderOptions string
The correct answer. Multiple correct answers for the placeholder are listed together.
eitherOrQuestions array
Contains information relating to the Either/Or question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a plausible but incorrect answer (also known as a distractor). Candidates can select one answer option as their response.
If null, the item is not an Either/Or question.
eitherOrQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
eitherOrQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
eitherOrQuestions/optionList object
Contains the answer options’ information.
eitherOrQuestions/optionList/options array
Contains each answer option’s information.
eitherOrQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information. If null, the answer option does not contain any assistive media.
eitherOrQuestions/optionList/options/assistiveMedia/id integer
The assistive media’s unique identifier.
eitherOrQuestions/optionList/options/assistiveMedia/href string
The endpoint to call the assistive media’s information, such as /api/v2/Item/{id}/AssistiveMedia/{id} where {id} is the item’s unique identifier and {id} is the assistive media’s unique identifier.
eitherOrQuestions/optionList/options/id integer
The answer option’s unique identifier.
eitherOrQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
eitherOrQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this only returns the text in the first column.
eitherOrQuestions/optionList/options/htmlText string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the content type is not MathML.
eitherOrQuestions/optionList/options/mediaItem object
Contains any media used as the answer option. If null, the content type is not Image.
eitherOrQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. The first array returns information for the answer option in the first column regardless of the Layout options, but the second array contains the second column’s information if set to Two columns.
eitherOrQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), this information is returned in MathML format. If null, the answer option is not a formula.
eitherOrQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option. If null, the answer option is not an image.
eitherOrQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
eitherOrQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
eitherOrQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
eitherOrQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
numericalEntryQuestions array
Contains information relating to the Numerical Entry question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a A Numerical Entry question requires candidates to submit a number in response to a prompt.
If null, the item is not a Numerical Entry question.
numericalEntryQuestions/specificValue integer
The correct answer entered in the Value field if the question requires a specific value as the correct answer.
numericalEntryQuestions/range object
Contains the correct answers’ information entered in the Min Value and Max Value fields if the the correct answer is set to be within a range.
numericalEntryQuestions/range/minValue integer
The minimum value for the range.
numericalEntryQuestions/range/maxValue integer
The maximum value for the range.
numericalEntryQuestions/decimalSeparator enumeration
Determines the separator format. This can be either Always Use Site Settings (Global), Always Use Decimals as Separators (Decimal), or Always Use Commas as Separators (Comma).
fillInTheBlankQuestions array
A Fill in the Blank question consists of a text string containing blank spaces where candidates can provide the missing words.
If null, the item is not a Fill in the Blank question.
fillInTheBlankQuestions/requireCaseSensitive Boolean
Determines whether the Require answer(s) to be case-sensitive setting is enabled.
fillInTheBlankQuestions/placeholderText string
The question and placeholder text in HTML format.
fillInTheBlankQuestions/placeHolders array
Contains the placeholders’ information.
fillInTheBlankQuestions/placeHolders/id integer
The placeholder’s unique identifier.
fillInTheBlankQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
fillInTheBlankQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
fillInTheBlankQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when given as an answer. This property is always true.
fillInTheBlankQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
fillInTheBlankQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate answers all blanks correctly setting is enabled.
selectFromAListQuestions array
Contains information relating to the Select From a List question type.
A Select From a List question presents candidates with a string of text with certain words replaced by drop-down lists containing possible answers. At least one of these list items is the correct answer. The other list items are plausible but incorrect answers (also known as distractors).
If null, the item is not a Select From a List question.
selectFromAListQuestions/orderOptionsAlphabetically Boolean
Determines whether list items are ordered alphabetically within their list.
selectFromAListQuestions/placeholderText string
The question and placeholder text in HTML format.
selectFromAListQuestions/placeHolders array
Contains the placeholders’ information.
selectFromAListQuestions/placeHolders/id integer
The placeholder’s unique identifier. Each placeholder represents a drop-down list.
selectFromAListQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
selectFromAListQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
selectFromAListQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when selected as an answer.
selectFromAListQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
selectFromAListQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled.
voiceCaptureQuestions array
Contains information relating to the Audio Capture question type.
An Audio Capture question allows candidates to record a verbal response to a prompt.
If null, the item is not an Audio Capture question.
voiceCaptureQuestions/timeLength integer
The maximum recording time in seconds. The maximum available recording time is five minutes (300 seconds) for Audio Capture questions in Mixed subjects, and 60 minutes (3600 seconds) in HTML subjects.
likertQuestions array
Contains information relating to the Likert survey question type.
A Likert survey item is a non-scored question type that lets candidates respond to a statement along a scale (for example, “1, 2, 3, 4, 5” or “Poor, Fair, Average, Good, Great”). Likert scales are used to measure candidates’ opinions on a given topic.
If null, the item is not a Likert survey question.
likertQuestions/isMatrixMode Boolean
Determines whether the Likert question is in Single (false) or Matrix (true) mode.
In Single mode, you can add one statement to your Likert item. In Matrix mode, you can add up to 20 statements.
likertQuestions/optionList object
Contains the answer options’ information.
likertQuestions/optionList/options array
Contains each answer option’s information.
likertQuestions/optionList/options/id integer
The answer option’s unique identifier.
likertQuestions/optionList/options/text string
The answer option text in HTML format.
likertQuestions/statementList object
Contains the list of statements’ information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements array
Contains the statement’s information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements/id integer
The statement’s unique identifier.
likertQuestions/statementList/statements/text string
The statement’s text in HTML format.
fileAttachQuestions array
Contains information relating to the File Attach question type.
A File Attach question allows candidates to work in an external app (like a word processor or spreadsheet editor) and upload a file as their response. Candidates can be provided a template file to complete, let candidates work from a blank file, or ask candidates to provide their own files.
If null, the item is not a File Attach question.
fileAttachQuestions/isManualMode Boolean
Determines whether the File Attach question is in Managed (false) or Manual (true) mode.
In Managed mode, candidates can work on up to five files. Candidates’ responses are automatically uploaded when they select Save in the external application.
In Manual mode, you can define the type and number of files candidates can download and upload. Candidates must select Upload in the test driver and find the file on their device’s local storage to submit their response.
fileAttachQuestions/downloadWording string
The download label wording if the question is in Manual mode.
fileAttachQuestions/uploadWording string
The upload label wording if the question is in Manual mode.
fileAttachQuestions/chooseFileButtonWording string
The upload button wording if the question is in Manual mode.
fileAttachQuestions/allowedExtensions string
The allowed file extensions accepted by the upload manager if the question is in Manual mode. Multiple file extensions are separated by the pipe symbol (for example, csv|txt).
fileAttachQuestions/files array
Contains the information for any files provided to the candidate for download.
fileAttachQuestions/files/title string
The download button text.
fileAttachQuestions/files/attachedFileType enumeration
The filetype. The following blank filetypes can be given: DOCX, DOC, XLSX, XLS, PPTX, PPT, MDB, ACCD, RDATA, RMD.
fileAttachQuestions/files/isSecureDoc Boolean
Determines whether the Secure File Attach setting is enabled if the question is in Managed mode.
Secure File Attach restricts the functionality of Microsoft Word and Excel instances opened by a Managed File Attach item in SecureClient. Candidates are only able to use Save, which uploads their response to SecureClient.
fileAttachQuestions/files/uploadLabel string
The upload button text if the question is in Managed mode.
fileAttachQuestions/files/attachmentType enumeration
Determines whether the file provided is a blank file (BlankFile) or a file uploaded by the item author (UploadedFile).
fileAttachQuestions/files/attachedFileName string
The file name if the file provided is an UploadedFile.
fileAttachQuestions/files/attachedFileData string
The file data in encoded Base64 format if the file provided is an UploadedFile.
fileAttachQuestions/minimumNumberOfFiles integer
The minimum number of files the candidate must upload if the question is in Manual mode.
fileAttachQuestions/maximumNumberOfFiles integer
The maximum number of files the candidate can upload if the question is in Manual mode.
fileAttachQuestions/maximumFileSize integer
The defined maximum file size in MB if the question is in Manual mode.
extendedMatchingQuestions array
Contains information relating to the Extended Matching question type.
An Extended Matching question asks candidates to draw links between two lists of content. Candidates may be able to draw one or many links from and to each answer option. Candidates can delete links by right-clicking on links in legacy tests and selecting Remove in standard tests.
If null, the item is not an Extended Matching question.
extendedMatchingQuestions/linkingType enumeration
Determines what linking type is being used: OneToOne, OneToMany, ManyToOne, or ManyToMany.
extendedMatchingQuestions/weightedMarking Boolean
Determines whether the Marking type is set to Standard (false) or Weighted marking (true).
extendedMatchingQuestions/leftBoxes array
Contains all the answer options on the left’s information.
extendedMatchingQuestions/leftBoxes/id integer
The answer option’s unique identifier.
extendedMatchingQuestions/leftBoxes/text string
The answer option’s text. If null, the item is in an HTML subject and the answer option is an image.
extendedMatchingQuestions/rightBoxes array
Contains all the answer options on the right’s information.
extendedMatchingQuestions/rightBoxes/id integer
The answer option’s unique reference code.
extendedMatchingQuestions/rightBoxes/text string
The answer option’s text. If null, the item is in an HTML subject and the answer option is an image.
extendedMatchingQuestions/correctLinks array
Contains all the matching answer option combinations’ information.
extendedMatchingQuestions/correctLinks/leftBoxId integer
The left answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/rightBoxId integer
The right answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/mark integer
The matching answer option combination’s mark if extendedMatchingQuestions/weightedMarking is true.
extendedMatchingQuestions/enableManyToManyMarking Boolean
Determines whether the Enable Many to many marking selections setting is enabled (HTML subjects only). extendedMatchingQuestions/weightedMarking must also be true.
tbsQuestions array
hotSpotQuestions array
Contains information relating to the Hotspot question type.
A Hotspot question asks candidates to find and select a specific part of an image. The correct area can be either rectangular or polygonal.
If null, the item is not a Hotspot question.
hotSpotQuestions/type enumeration
Determines whether the Hotspot question contains a Rectangle (four points) or Polygon (indefinite number of points) hotspot.
hotSpotQuestions/hotSpotZone array
Contains the hotspot zone’s co-ordinates.
hotSpotQuestions/hotSpotZone/order integer
Determines which point the hotSpotQuestions/hotSpotZone/point object is referring to.
hotSpotQuestions/hotSpotZone/point object
Contains the point’s co-ordinates.
hotSpotQuestions/hotSpotZone/point/top integer
Determines the distance of the point in PX from the top of the hotspot.
hotSpotQuestions/hotSpotZone/point/left integer
Determines the distance of the point in PX from the left of the hotspot.
hotSpotQuestions/backGroundImage object
Contains the hotspot background image’s information.
hotSpotQuestions/backGroundImage/mediaItem object
Contains the hotspot background image’s media library information.
hotSpotQuestions/backGroundImage/mediaItem/id integer
Contains the hotspot background image’s unique identifier.
hotSpotQuestions/backGroundImage/height integer
The hotspot background image’s height in PX.
hotSpotQuestions/backGroundImage/width integer
The hotspot background image’s width in PX.
allowOpenImageInPopup Boolean
Determines whether the Allow image to be opened in popup setting is enabled if an image is added to Step 3 of the item.
mediaLayout enumeration
The media layout if media is added to Step 3 of the item. The layout options are AutoSelect, LeftAnswer, RightAnswer, AboveQuestionText, AboveAnswer, and BelowAnswer.
itemTagValues array
Contains the information of any item and tag value associations.
itemTagValues/id integer
The item and tag value association’s unique identifier.
itemTagValues/href string
The endpoint to call the item and tag value association’s information, such as /api/v2/ItemTagValue/{id} where {id} is the item and tag value association’s unique identifier.
itemSetTagValues array
Contains the information of any item and tag value associations inherited by the item if it is in an item set.
itemSetTagValues/id integer
The item and tag value association’s unique identifier.
itemSetTagValues/href string
The endpoint to call the item and tag value association’s information, such as /api/v2/ItemTagValue/{id} where {id} is the item and tag value association’s unique identifier.
enemyItems array
Contains the information of any items the item has an enemy relationship with.
enemyItems/id integer
The item’s unique identifier.
enemyItems/href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
secondaryEnemyItems array
Contains the information of any items the item has inherited an enemy relationship with if it is in an item set.
secondaryEnemyItems/id integer
The item’s unique identifier.
secondaryEnemyItems/href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
sectionEnemyItems array
Contains the information of any items the item has a section-level enemy relationship with.
sectionEnemyItems/id integer
The item’s unique identifier.
sectionEnemyItems/href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
secondarySectionEnemyItems array
Contains the information of any items the item has inherited a section-level enemy relationship with if it is in an item set.
secondarySectionEnemyItems/id integer
The item’s unique identifier.
secondarySectionEnemyItems/href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
tools array
Contains the information of any tools added to the item.
tools/name enumeration
The type of tool. The available tools are Calculator, Caliper, Notepad, and Protractor.
tools/settings array
Contains the tool’s name and settings.
tools/settings/mode enumeration
The tool mode. The available modes are Basic (calculator), Pixels (caliper; HTML subjects only), and Scientific (calculator).
tools/settings/label string
The name given to the tool.
owner object
The item owner’s information.
owner/id integer
The item owner’s unique identifier.
owner/reference string
The item owner’s unique reference code.
owner/href string
The endpoint to call the item owner’s information, such as /api/v2/User/{id} where {id} is the item owner’s unique identifier.
comments array
Contains the information for any comments left on the item.
comments/id integer
The comment’s unique identifier.
comments/text string
The comment.
comments/private Boolean
Determines whether the comment is a private comment (only viewable by users with the Comment Manager permission) or not.
comments/dateCreated string
The date the comment was left, in YYYY/MM/DD format.
comments/createdBy array
Contains the user who left the comment’s information.
comments/createdBy/id integer
The user’s unique identifier.
comments/createdBy/reference string
The user’s unique reference code.
comments/createdBy/href string
The endpoint to call the user’s information, such as /api/v2/User/{id} where {id} is the user’s unique identifier.
sharedWith array
Contains the information for any subject the item is shared with.
sharedWith/id integer
The subject’s unique identifier.
sharedWith/reference string
The subject’s’s unique reference code.
sharedWith/href string
The endpoint to call the subject’s information, such as /api/v2/Subject/{id} where {id} is the subject’s unique identifier.
sharedWith/name string
The subject’s name.
standardLists array
Contains the information for any item list the item is a part of.
standardLists/id integer
The item list’s unique identifier.
standardLists/reference string
The item list’s unique reference code.
standardLists/href string
The endpoint to call the item list’s information, such as /api/v2/ItemList/{id} where {id} is the item list’s unique identifier.
publishStatus enumeration
Indicates whether the item has been published to ItemBank and can therefore be added to a test. The possible values are:
- 0 – The item is not published. It is not a live item.
- 1 – Something went wrong at the last publish attempt. Try resaving the item.
- 2 – The item is published and can be added to tests.
language object
If item language variants are enabled, contains the information related to the item’s language (the default language of the item).
language/name string
The name of the language.
language/code enumeration
The language’s ISO code. The available language codes are amh, ar, arm, pob, bul, mya, zh, zho, hrv, ces, dan, nl, en-int, en, us, est, per, tgl, fin, frc, ga, gle, glg, ge, gre, heb, hun, ind, ita, jpn, kk, khm, kor, lao, la, lav, lit, mlt, mon, nep, no, pol, por, iir, ron, rus, smo, slk, slv, som, sp, es-int, lac, es-pa, es-pr, swe, tha, tur, ukr, vie, and we.
languageVariants array
If item language variants are enabled, contains the language variant(s) information.
languageVariants/deleted Boolean
Determines whether the language variant has been deleted. Deleted language variants can be stored or permanently deleted.
languageVariants/href string
The endpoint to call the language variant’s information, such as /api/v2/Item/{id}/LanguageVariant/{languageCode} where {id} is the item’s unique identifier and {languageCode} is the language variant’s ISO code.
languageVariants/name string
The name of the language.
languageVariants/code enumeration
The language’s ISO code. The available language codes are amh, ar, arm, pob, bul, mya, zh, zho, hrv, ces, dan, nl, en-int, en, us, est, per, tgl, fin, frc, ga, gle, glg, ge, gre, heb, hun, ind, ita, jpn, kk, khm, kor, lao, la, lav, lit, mlt, mon, nep, no, pol, por, iir, ron, rus, smo, slk, slv, som, sp, es-int, lac, es-pa, es-pr, swe, tha, tur, ukr, vie, and we.
id integer
The item’s unique identifier.
href string
The endpoint to call the item’s information, such as /api/v2/Item/{id} where {id} is the item’s unique identifier.
errors string
Information about any errors that occurred during the request.
serverTimeZone enumeration
The timezone of the server sending the response.
Creating an item
Send a request to the endpoint to create an item.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
content-type |
header MANDATORY |
application/json or application/xml |
Determines data format of the request, which can be either JSON or XML. |
content-length |
header MANDATORY |
{number} |
Determines the number of characters passed in the body of the request, where {number} is a numerical figure. This is usually automatically calculated when the request is sent. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
Sample requests
The following request contains the minimum required request body to create an item.
{
"subject": {
"reference": "Subject1"
},
"name": "Multiple Choice question 1",
"multipleChoiceQuestions": [
{}
]
}
The following requests contain the minimum required request body to create each item type at Live status.
Multiple Choice questions
{
"subject": {
"reference": "Subject1"
},
"name": "Multiple Choice question 2",
"mark": 1,
"status": "Live",
"questionText": "What is the capital city of Belgium?",
"multipleChoiceQuestions": [
{
"optionList": {
"options": [
{
"text": "Brussels",
"correct": true
},
{
"text": "Brugge",
"correct": false
},
{
"text": "Antwerp",
"correct": false
}
]
}
}
]
}
Multiple Response questions
{
"subject": {
"reference": "Subject1"
},
"name": "Multiple Response question 1",
"mark": 1,
"status": "Live",
"questionText": "Which of the following cities are in the Netherlands?",
"multipleResponseQuestions": [
{
"maxSelections": "2",
"optionList": {
"options": [
{
"text": "Maastricht",
"correct": true
},
{
"text": "Ghent",
"correct": false
},
{
"text": "Utrecht",
"correct": true
}
]
}
}
]
}
Essay questions
{
"subject": {
"reference": "Subject1"
},
"name": "Essay question",
"mark": 1,
"status": "Live",
"questionText": "Summarise the key differences between Aldous Huxley's 'Brave New World' and George Orwell's '1984' in under 750 words. ",
"essayQuestions": [
{
"maxCharacters": 8000
}
]
}
Short Answer questions
{
"subject": {
"reference": "Subject1"
},
"name": "Short Answer question",
"mark": 1,
"status": "Live",
"questionText": "What is the title of The Beatles' 8th studio album, which spent 27 weeks at the top of the UK charts, and was released in 1967?",
"shortAnswerQuestions": [
{
"maxCharacterCount": 40,
"answerList": {
"answers": [
"Sgt. Pepper's Lonely Hearts Club Band"
]
}
}
]
}
Advanced Short Answer questions
{
"subject": {
"reference": "Subject1"
},
"name": "Advanced Short Answer question",
"mark": 2,
"status": "Live",
"questionText": "Complete the following sentence. You get one mark for each correct answer.",
"shortAnswerQuestions": [
{
"placeholderText": "The capital of England is <placeholder></placeholder> and the capital of Northern Ireland is <placeholder></placeholder>.",
"placeholders": [
{
"placeholderOptions": [
"London",
"Londres",
"Landan"
]
},
{
"placeholderOptions": [
"Belfast",
"Belphast",
"Bellfast"
]
}
]
}
]
}
Either/Or questions
{
"subject": {
"reference": "Subject1"
},
"name": "Either/Or question",
"mark": 1,
"status": "Live",
"questionText": "Halley's Comet returns to Earth approximately every 75 years. True or false?",
"eitherOrQuestions": [
{
"optionList": {
"options": [
{
"text": "True",
"correct": true
},
{
"text": "False",
"correct": false
}
]
}
}
]
}
Numerical Entry questions
{
"subject": {
"reference": "Subject1"
},
"name": "Numerical Entry question",
"mark": 1,
"status": "Live",
"questionText": "What is the square root of 64?",
"numericalEntryQuestions": [
{
"specificValue": 8
}
]
}
Fill in the Blank questions
{
"subject": {
"reference": "Subject1"
},
"name": "Fill in the Blank question",
"mark": 1,
"status": "Live",
"questionText": "Complete the following sentence.",
"fillInTheBlankQuestions": [
{
"placeholderText": "The capital of England is <placeholder></placeholder>.",
"placeholders": [
{
"id": 1,
"orderNumber": 1,
"placeholderOptions": [
{
"id": 1,
"orderNumber": 1,
"isCorrect": true,
"text": "London"
},
{
"id": 2,
"orderNumber": 2,
"isCorrect": true,
"text": "Londres"
},
{
"id": 3,
"orderNumber": 3,
"isCorrect": true,
"text": "Landan"
}
]
}
],
"awardAllCorrect": false
}
]
}
Audio Capture questions
{
"subject": {
"reference": "Subject1"
},
"name": "Audio Capture question",
"mark": 1,
"status": "Live",
"questionText": "In French, record yourself saying 'It is going to rain tomorrow'.",
"voiceCaptureQuestions": [
{
"timeLength": 30
}
]
}
Single Likert questions
{
"subject": {
"reference": "Subject1"
},
"name": "Single Likert question",
"status": "Live",
"questionText": "How hard did you find this test?",
"likertQuestions": [
{
"isMatrixMode": false,
"optionList": {
"options": [
{
"text": "Easy"
},
{
"text": "Medium"
},
{
"text": "Difficult"
}
]
}
}
]
}
Matrix Likert questions
{
"subject": {
"reference": "Subject1"
},
"name": "Matrix Likert question",
"status": "Live",
"questionText": "How satisfied are you with the following aspects of your course?",
"likertQuestions": [
{
"isMatrixMode": true,
"optionList": {
"options": [
{
"text": "Not satisfied"
},
{
"text": "Satisfied"
},
{
"text": "Very satisfied"
}
]
},
"statementList": {
"statements": [
{
"text": "Materials"
},
{
"text": "Teaching"
},
{
"text": "Assessment"
}
]
}
}
]
}
Extended Matching questions
{
"subject": {
"reference": "Subject1"
},
"name": "Extended Matching question",
"status": "Live",
"mark": "3",
"questionText": "Match the novel to the author who wrote it.",
"extendedMatchingQuestions": [
{
"linkingType": "oneToOne",
"weightedMarking": true,
"leftBoxes": [
{
"id": 1,
"text": "One Flew Over the Cuckoo's Nest"
},
{
"id": 2,
"text": "Gone Girl"
},
{
"id": 3,
"text": "The Handmaid's Tale"
}
],
"rightBoxes": [
{
"id": 1,
"text": "Margaret Atwood"
},
{
"id": 2,
"text": "Ken Kesey"
},
{
"id": 3,
"text": "Gillian Flynn"
}
],
"correctLinks": [
{
"leftBoxId": 1,
"rightBoxId": 2,
"mark": 1
},
{
"leftBoxId": 2,
"rightBoxId": 3,
"mark": 1
},
{
"leftBoxId": 3,
"rightBoxId": 1,
"mark": 1
}
]
}
]
}
Select From a List questions
{
"subject": {
"reference": "Subject1"
},
"name": "Select From a List question",
"status": "Live",
"mark": "1",
"questionText": "Complete the following sentence.",
"selectFromAListQuestions": [
{
"placeholderText": "The capital of England is <placeholder></placeholder>.",
"placeholders": [
{
"placeholderOptions": [
{
"isCorrect": false,
"text": "Manchester"
},
{
"isCorrect": true,
"text": "London"
}
]
}
]
}
]
}
Manual File Attach questions
{
"subject": {
"reference": "Subject1"
},
"name": "Managed File Attach question",
"status": "Live",
"mark": "1",
"questionText": "What impact did the dissolution of Yugoslavia have on the rest of Europe? Write your answer in the attached Word document.",
"fileAttachQuestions": [
{
"isManualMode": false,
"files": [
{
"attachedFileType": "docx",
"attachmentType": "BlankFile"
}
]
}
]
}
Managed File Attach questions
{
"subject": {
"reference": "Subject1"
},
"name": "Manual File Attach question",
"status": "Live",
"mark": "1",
"questionText": "What impact did the dissolution of Yugoslavia have on the rest of Europe? Write your answer in the attached Word document and then re-upload it once finished.",
"fileAttachQuestions": [
{
"isManualMode": true,
"allowedExtensions": "docx",
"files": [
{
"attachedFileType": "docx",
"attachmentType": "BlankFile"
}
]
}
]
}
Drag and Drop questions
{
"subject": {
"reference": "Subject1"
},
"name": "Drag and Drop question",
"status": "Live",
"mark": "3",
"questionText": "Drag the European countries into the drop zone.",
"dragDropQuestions": [
{
"maxItemsPerZoneType": "TotalCount",
"dropZones": [
{
"title": "Europe",
"dragOptions": [
{
"text": "France"
},
{
"text": "Latvia"
},
{
"text": "Bulgaria"
}
]
}
],
"additionalOptions": {
"options": [
{
"text": "Argentina"
},
{
"text": "Australia"
},
{
"text": "Morocco"
}
]
}
}
]
}
Advanced Drag and Drop questions
{
"subject": {
"reference": "Subject1"
},
"name": "Advanded Drag and Drop question",
"status": "Live",
"mark": "1",
"questionText": "Drag the national flags into their corresponding drop zones.",
"dragDropQuestions": [
{
"maxItemsPerZoneType": "Custom",
"type": "Advanced",
"dropZones": [
{
"id": 1,
"title": "Brazil",
"dragOptions": [
{
"id": 1,
"mediaItem": {
"id": 2
}
}
],
"x": 200,
"y": 150,
"height": 50,
"width": 50
},
{
"id": 2,
"title": "France",
"dragOptions": [
{
"id": 2,
"mediaItem": {
"id": 4
}
}
],
"x": 200,
"y": 150,
"height": 50,
"width": 50
},
{
"id": 3,
"title": "South Africa",
"dragOptions": [
{
"id": 3,
"mediaItem": {
"id": 4
}
}
],
"x": 200,
"y": 150,
"height": 50,
"width": 50
}
],
"backgroundImage": {
"mediaItem": {
"id": 1
},
"height": 350,
"width": 700
}
}
]
}
Request body schema
The request body schema contains a description of every property that can be passed with this endpoint.
language object mandatory
If item language variants are enabled, contains the information related to the item’s language (the default language of the item).
language/code enumeration
The language’s ISO code. The available language codes are amh, ar, arm, pob, bul, mya, zh, zho, hrv, ces, dan, nl, en-int, en, us, est, per, tgl, fin, frc, ga, gle, glg, ge, gre, heb, hun, ind, ita, jpn, kk, khm, kor, lao, la, lav, lit, mlt, mon, nep, no, pol, por, iir, ron, rus, smo, slk, slv, som, sp, es-int, lac, es-pa, es-pr, swe, tha, tur, ukr, vie, and we.
folder object optional
Contains the folder that the item is in.
folder/id integer
The folder’s unique identifier.
folder/position integer
The position of the item within the folder.
markScheme object optional
Contains the mark scheme’s information.
markScheme/name string
The mark scheme’s file name.
markscheme/data string
The mark scheme’s file data in encoded Base64 format.
name string mandatory
The item’s name.
questionText string optional
The first question stem block in HTML format. If the item has multiple question stem blocks, use the stemComponents object.
htmlText string optional
The first question stem block in HTML format.
mathML string optional
If the first question stem block contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
mark integer optional
The item’s assigned mark.
citations string optional
Any citations added to the item in HTML format.
seedUsageCount integer optional
The item’s seeded usage count, which is an integer assigned to the item when migrating item statistics from another system.
seedPValue integer optional
The item’s seeded p value, which is an integer assigned to the item when migrating item statistics from another system.
status enumeration optional
The item’s workflow status. The default workflow statuses are Draft, To Review, Reviewed, Live, and Withdrawn. Every item starts at Draft and must be set to Live before being able to be added to a test form. Custom workflow statuses can also be created and assigned to items.
Defaults to Draft if omitted.
itemPurpose enumeration optional
The item’s assigned purpose. This can be either Summative, Formative, or Unspecified.
Defaults to Unspecified if omitted.
markingType enumeration optional
Determines whether the item is set to be Computer or Human-marked.
comment string optional
Any comment left on the item in text format.
commentIsPrivate Boolean optional
Determines whether the comment is a private comment (only viewable by users with the Comment Manager permission) or not. Defaults to false if omitted.
generalFeedback object optional
Contains any general candidate feedback added to the item.
generalFeedback/text string
The feedback text in HTML format.
generalFeedback/htmlText string
The feedback text in HTML format.
generalFeedback/mediaItems array
Contains any media added to the feedback.
generalFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
generalFeedback/mediaItems/id integer
The media’s unique identifier.
generalFeedback/sourceMaterials array
Contains any source material added to the feedback.
generalFeedback/sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
generalFeedback/sourceMaterials/id integer
The source material’s unique identifier.
correctFeedback object optional
Contains any correct candidate feedback added to the item.
correctFeedback/text string
The feedback text in HTML format.
correctFeedback/htmlText string
The feedback text in HTML format.
correctFeedback/mediaItems array
Contains any media added to the feedback.
correctFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
correctFeedback/mediaItems/id integer
The media’s unique identifier.
correctFeedback/sourceMaterials array
Contains any source material added to the feedback.
correctFeedback/sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
correctFeedback/sourceMaterials/id integer
The source material’s unique identifier.
incorrectFeedback object optional
Contains any incorrect candidate feedback added to the item.
incorrectFeedback/text string
The feedback text in HTML format.
incorrectFeedback/htmlText string
The feedback text in HTML format.
incorrectFeedback/mediaItems array
Contains any media added to the feedback.
incorrectFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
incorrectFeedback/mediaItems/id integer
The media’s unique identifier.
incorrectFeedback/sourceMaterials array
Contains any source material added to the feedback.
incorrectFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
incorrectFeedback/sourceMaterials/id integer
The source material’s unique identifier.
mediaItems array optional
Contains any media embedded on the item.
mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
mediaItems/id integer
The media’s unique identifier.
sourceMaterials array optional
Contains any source material attached to the item.
sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
sourceMaterials/id integer
The source material’s unique identifier.
stemComponents array optional
A collection of text, images or equations that form each question stem.
stemComponents/text string
The question stem’s text in HTML format.
stemComponents/mathML string
Any formula authored using the Equation Editor in Mixed subjects.
stemComponents/media object
Contains any media in the question stem for items in Mixed subjects.
stemComponents/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
stemComponents/media/id integer
The media’s unique identifier.
multipleChoiceQuestions array optional
Contains information relating to the Multiple Choice question type.
A Multiple Choice question offers candidates a set of possible answers to a problem. One of these answers is the correct answer and the others are plausible but incorrect answers (also known as “distractors”). Candidates can select one answer option as their response.
multipleChoiceQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns. Defaults to 50/50 if omitted.
multipleChoiceQuestions/optionList object
Contains the answer options’ information.
multipleChoiceQuestions/optionList/options array
Contains each answer option’s information.
multipleChoiceQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
multipleChoiceQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
multipleChoiceQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
multipleChoiceQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleChoiceQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
multipleChoiceQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleChoiceQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleChoiceQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
multipleChoiceQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleChoiceQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
multipleChoiceQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleChoiceQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
multipleChoiceQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleChoiceQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleChoiceQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleChoiceQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleChoiceQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleChoiceQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleChoiceQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate. Defaults to true if omitted.
multipleChoiceQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery. Defaults to false if omitted.
multipleChoiceQuestions/markType enumeration
Determines whether the Marking type for the question is Standard or Weighted. Defaults to Standard if omitted.
multipleChoiceQuestions/tableOptionsHtml string
Include answer options as a table in HTML format to enable the Answer options as a table (HTML subjects only) Layout options setting.
multipleChoiceQuestions/rationaleEnabled Boolean
Determines whether the Show Answer Rationale setting has been enabled. Defaults to false if omitted.
multipleResponseQuestions array optional
Contains information relating to the Multiple Response question type.
A Multiple Response question offers candidates a set of possible answers to a question. The options contain correct answers and plausible but incorrect answers (also known as distractors). Candidates can select multiple answer options as their response.
multipleResponseQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns. Defaults to 50/50 if omitted.
multipleResponseQuestions/optionList object
Contains the answer options’ information.
multipleResponseQuestions/optionList/options array
Contains each answer option’s information.
multipleResponseQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
multipleResponseQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
multipleResponseQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
multipleResponseQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleResponseQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subejcts only).
multipleResponseQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleResponseQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleResponseQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
multipleResponseQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleResponseQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
multipleResponseQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), separate the first row using by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleResponseQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
multipleResponseQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleResponseQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleResponseQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleResponseQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleResponseQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleResponseQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleResponseQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate. Defaults to true if omitted.
multipleResponseQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery. Defaults to false if omitted.
multipleResponseQuestions/markType enumeration
Determines whether the Marking type for the question is Standard, Weighted, or Combination. Defaults to Standard if omitted.
multipleResponseQuestions/combinations array
Contains the answer option combinations’ information if the Marking type is set to Combination.
multipleResponseQuestions/combinations/Id integer
The answer option combination’s unique identifier.
multipleResponseQuestions/combinations/Mark integer
The number of marks for the answer option combination.
multipleResponseQuestions/combinations/Title string
The name attributed to the answer option combination.
multipleResponseQuestions/combinations/Options array
Contains the information for the individual answer options that make up the answer option combination.
multipleResponseQuestions/combinations/Options/Id integer
The answer option’s unique identifier.
multipleResponseQuestions/combinations/Options/Text string
The answer option’s label.
multipleResponseQuestions/maxSelections integer
The maximum number of answer options the candidate can select. This is determined by the Maximum number of candidate selections setting, the options for which are Equal to correct options, No Limit, or Custom.
multipleResponseQuestions/partialMarks Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled (true) or not (false). Defaults to false if omitted.
multipleResponseQuestions/tableOptionsHtml string
Include answer options as a table in HTML format to enable the Answer options as a table (HTML subjects only) Layout options setting.
multipleResponseQuestions/rationaleEnabled Boolean
Determines whether the Show Answer Rationale setting is enabled. Defaults to false if omitted.
essayQuestions array optional
Contains information relating to the Essay question type.
An Essay question asks candidates to provide an extended written response to a prompt.
essayQuestions/enableTextFormatting Boolean
Determines whether the Enable text formatting for candidates setting is enabled, letting candidates use basic formatting tools when writing their response. Defaults to false if omitted.
essayQuestions/maxCharacters integer
The maximum number of characters allowed for the candidate’s response.
essayQuestions/numberOfLines integer
The number of lines provided for the candidate’s response if the test is being delivered on-screen.
essayQuestions/displayCounter Boolean
Determines whether the Display word counter setting is enabled, letting candidates view their current word count when writing their response. Defaults to false if omitted.
essayQuestions/numberOfLinesPerResponse integer
The number of lines provided for the candidate’s response if the test is being delivered on paper.
essayQuestions/wordCounterLabel string
The name of the word counter if essayQuestions/displayCounter is true.
essayQuestions/textDirectionMode integer
Determines the Answer Input Direction for candidates. 0 is Left to right and 1 is Right to left.
shortAnswerQuestions array optional
Contains information relating to the Short Answer question type.
A Short Answer question requires candidates to submit a word in response to a prompt.
If null, the item is not a Short Answer question.
shortAnswerQuestions/requireCaseSensitive Boolean
Determines whether the Require answer to be case-sensitive setting is enabled. Defaults to false if omitted.
shortAnswerQuestions/limitCandidateResponse Boolean
Determines whether the Limit candidate response setting is enabled, restricting how many characters candidates can enter into the answer field. Defaults to false if omitted.
shortAnswerQuestions/maxCharacterCount integer
The maximum number of characters candidates can enter into the answer field if shortAnswerQuestions/limitCandidateResponse is true.
The maximum number of characters that candidates can enter for Advanced Short Answer questions is set at placeholder level.
shortAnswerQuestions/answerList object
Contains the correct answer information if the item is a Standard Short Answer question.
shortAnswerQuestions/answerList/answers array
The correct answer. Multiple correct answers are listed together.
shortAnswerQuestions/placeholderText string
The question and placeholder text in HTML format if the item is an Advanced Short Answer question. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
shortAnswerQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct answers setting is enabled if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders array
Contains the placeholders’ information if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders/maxCharacterCount integer
Determines the maximum number of characters the candidate can enter into the placeholder if shortAnswerQuestions/limitCandidateResponse is true.
shortAnswerQuestions/placeholders/placeholderOptions string
The correct answer. Multiple correct answers for the placeholder are listed together.
eitherOrQuestions array optional
Contains information relating to the Either/Or question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a plausible but incorrect answer (also known as a distractor). Candidates can select one answer option as their response.
eitherOrQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate. Defaults to true if omitted.
eitherOrQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns. Defaults to 50/50 if omitted.
eitherOrQuestions/optionList object
Contains the answer options’ information.
eitherOrQuestions/optionList/options array
Contains each answer option’s information.
eitherOrQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
eitherOrQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
eitherOrQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
eitherOrQuestions/optionList/options/id integer
The answer option’s unique identifier.
eitherOrQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
eitherOrQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
eitherOrQuestions/optionList/options/htmlText string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
eitherOrQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
eitherOrQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
eitherOrQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
eitherOrQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
eitherOrQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
eitherOrQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
eitherOrQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
eitherOrQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
eitherOrQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
eitherOrQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options. Defaults to false if omitted.
numericalEntryQuestions array optional
Contains information relating to the Numerical Entry question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a A Numerical Entry question requires candidates to submit a number in response to a prompt.
numericalEntryQuestions/specificValue integer
The correct answer entered in the Value field if the question requires a specific value as the correct answer.
numericalEntryQuestions/range object
Contains the correct answers’ information entered in the Min Value and Max Value fields if the the correct answer is set to be within a range.
numericalEntryQuestions/range/minValue integer
The minimum value for the range.
numericalEntryQuestions/range/maxValue integer
The maximum value for the range.
numericalEntryQuestions/decimalSeparator enumeration
Determines the separator format. This can be either Always Use Site Settings (Global), Always Use Decimals as Separators (Decimal), or Always Use Commas as Separators (Comma).
fillInTheBlankQuestions array optional
A Fill in the Blank question consists of a text string containing blank spaces where candidates can provide the missing words.
fillInTheBlankQuestions/requireCaseSensitive Boolean
Determines whether the Require answer(s) to be case-sensitive setting is enabled. Defaults to false if omitted.
fillInTheBlankQuestions/placeholderText string
The question and placeholder text in HTML format. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
fillInTheBlankQuestions/placeHolders array
Contains the placeholders’ information.
fillInTheBlankQuestions/placeHolders/id integer
The placeholder’s unique identifier.
fillInTheBlankQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
fillInTheBlankQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
fillInTheBlankQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when given as an answer. This property should always be true.
fillInTheBlankQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
fillInTheBlankQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate answers all blanks correctly setting is enabled. Defaults to false if omitted.
voiceCaptureQuestions array optional
Contains information relating to the Audio Capture question type.
An Audio Capture question allows candidates to record a verbal response to a prompt.
voiceCaptureQuestions/timeLength integer
The maximum recording time in seconds. The maximum available recording time is five minutes (300 seconds) for Audio Capture questions in Mixed subjects, and 60 minutes (3600 seconds) in HTML subjects.
likertQuestions array optional
Contains information relating to the Likert survey question type.
A Likert survey item is a non-scored question type that lets candidates respond to a statement along a scale (for example, “1, 2, 3, 4, 5” or “Poor, Fair, Average, Good, Great”). Likert scales are used to measure candidates’ opinions on a given topic.
likertQuestions/isMatrixMode Boolean
Determines whether the Likert question is in Single (false) or Matrix (true) mode.
In Single mode, you can add one statement to your Likert item. In Matrix mode, you can add up to 20 statements.
likertQuestions/optionList object
Contains the answer options’ information.
likertQuestions/optionList/options array
Contains each answer option’s information.
likertQuestions/optionList/options/id integer
The answer option’s unique identifier.
likertQuestions/optionList/options/text string
The answer option text in HTML format.
likertQuestions/statementList object
Contains the list of statements’ information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements array
Contains the statement’s information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements/id integer
The statement’s unique identifier.
likertQuestions/statementList/statements/text string
The statement’s text in HTML format.
extendedMatchingQuestions array optional
Contains information relating to the Extended Matching question type.
An Extended Matching question asks candidates to draw links between two lists of content. Candidates may be able to draw one or many links from and to each answer option. Candidates can delete links by right-clicking on links in legacy tests and selecting Remove in standard tests.
extendedMatchingQuestions/linkingType enumeration
Determines what linking type is being used: OneToOne, OneToMany, ManyToOne, or ManyToMany.
extendedMatchingQuestions/weightedMarking Boolean
Determines whether the Marking type is set to Standard (false) or Weighted marking (true).
extendedMatchingQuestions/leftBoxes array
Contains all the answer options on the left’s information.
extendedMatchingQuestions/leftBoxes/id integer
The answer option’s unique identifier.
extendedMatchingQuestions/leftBoxes/text string
The answer option’s text.
extendedMatchingQuestions/rightBoxes array
Contains all the answer options on the right’s information.
extendedMatchingQuestions/rightBoxes/id integer
The answer option’s unique identifier.
extendedMatchingQuestions/rightBoxes/text string
The answer option’s text.
extendedMatchingQuestions/correctLinks array
Contains all the matching answer option combinations’ information.
extendedMatchingQuestions/correctLinks/leftBoxId integer
The left answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/rightBoxId integer
The right answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/mark integer
The matching answer option combination’s mark if extendedMatchingQuestions/weightedMarking is true.
extendedMatchingQuestions/enableManyToManyMarking Boolean
Determines whether the Enable Many to many marking selections setting is enabled (HTML subjects only). extendedMatchingQuestions/weightedMarking must also be true. Defaults to false if omitted.
selectFromAListQuestions array optional
Contains information relating to the Select From a List question type.
A Select From a List question presents candidates with a string of text with certain words replaced by drop-down lists containing possible answers. At least one of these list items is the correct answer. The other list items are plausible but incorrect answers (also known as distractors).
selectFromAListQuestions/orderOptionsAlphabetically Boolean
Determines whether list items are ordered alphabetically within their list. Defaults to false if omitted.
selectFromAListQuestions/placeholderText string
The question and placeholder text in HTML format. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
selectFromAListQuestions/placeHolders array
Contains the placeholders’ information.
selectFromAListQuestions/placeHolders/id integer
The placeholder’s unique identifier. Each placeholder represents a drop-down list.
selectFromAListQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
selectFromAListQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
selectFromAListQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when selected as an answer.
selectFromAListQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
selectFromAListQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled. Defaults to false if omitted.
fileAttachQuestions array optional
Contains information relating to the File Attach question type.
A File Attach question allows candidates to work in an external app (like a word processor or spreadsheet editor) and upload a file as their response. Candidates can be provided a template file to complete, let candidates work from a blank file, or ask candidates to provide their own files.
fileAttachQuestions/isManualMode Boolean
Determines whether the File Attach question is in Managed (false) or Manual (true) mode.
In Managed mode, candidates can work on up to five files. Candidates’ responses are automatically uploaded when they select Save in the external application.
In Manual mode, you can define the type and number of files candidates can download and upload. Candidates must select Upload in the test driver and find the file on their device’s local storage to submit their response.
fileAttachQuestions/downloadWording string
The download label wording if the question is in Manual mode.
fileAttachQuestions/uploadWording string
The upload label wording if the question is in Manual mode.
fileAttachQuestions/chooseFileButtonWording string
The upload button wording if the question is in Manual mode.
fileAttachQuestions/allowedExtensions string
The allowed file extensions accepted by the upload manager if the question is in Manual mode. Multiple file extensions are separated by the pipe symbol (for example, csv|txt).
fileAttachQuestions/files array
Contains the information for any files provided to the candidate for download.
fileAttachQuestions/files/title string
The download button text.
fileAttachQuestions/files/attachedFileType enumeration
The filetype. The following blank filetypes can be given: DOCX, DOC, XLSX, XLS, PPTX, PPT, MDB, ACCD, RDATA, RMD.
fileAttachQuestions/files/isSecureDoc Boolean
Determines whether the Secure File Attach setting is enabled if the question is in Managed mode.
Secure File Attach restricts the functionality of Microsoft Word and Excel instances opened by a Managed File Attach item in SecureClient. Candidates are only able to use Save, which uploads their response to SecureClient.
Defaults to false if omitted.
fileAttachQuestions/files/uploadLabel string
The upload button text if the question is in Managed mode.
fileAttachQuestions/files/attachmentType enumeration
Determines whether the file provided is a blank file (BlankFile) or a file uploaded by the item author (UploadedFile).
fileAttachQuestions/files/attachedFileName string
The file name if the file provided is an UploadedFile.
fileAttachQuestions/files/attachedFileData string
The file data in encoded Base64 format if the file provided is an UploadedFile.
fileAttachQuestions/minimumNumberOfFiles integer
The minimum number of files the candidate must upload if the question is in Manual mode.
fileAttachQuestions/maximumNumberOfFiles integer
The maximum number of files the candidate can upload if the question is in Manual mode.
fileAttachQuestions/maximumFileSize integer
The defined maximum file size in MB if the question is in Manual mode.
dragDropQuestions array optional
Contains information relating to the Drag and Drop question type.
A Drag and Drop question consists of text-based “drag options” that candidates must place in the appropriate “drop zones”. The available drag options might include distractors that are not associated with any drop zone.
dragDropQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled. Defaults to false if omitted.
dragDropQuestions/maxItemsPerZoneType enumeration
Determines whether the maximum number of drag options per drop zone is Equal to maximum correct drag options (MaxCorrect), Equal to total amount of drag options (TotalCount), or a Custom (Custom) amount.
dragDropQuestions/customItemsPerZone integer
If the dragDropQuestions/maxItemsPerZoneType object is Custom, determines how many drag options per zone.
dragDropQuestions/type enumeration
Determines whether the item is a Standard or Advanced (HTML subjects only) Drag and Drop question.
dragDropQuestions/markType enumeration
Determines whether the marking is Standard, Balanced, or Weighted (Standard Drag and Drop questions in HTML subjects only). Defaults to Standard if omitted.
dragDropQuestions/dropZones array
Contains the drop zones’ information.
dragDropQuestions/dropZones/id integer
The drop zone’s unique identifier.
dragDropQuestions/dropZones/title string
The drop zone’s title.
dragDropQuestions/dropZones/dragOptions array
Contains the drag options’ information.
dragDropQuestions/dropZones/dragOptions/id integer
The drag option’s unique identifier.
dragDropQuestions/dropZones/dragOptions/text string
The drag option’s text in HTML format.
dragDropQuestions/dropZones/dragOptions/mediaItem object
Contains any media attached to the drag option.
dragDropQuestions/dropZones/dragOptions/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/dropZones/dragOptions/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/dropZones/x integer
The x coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/y integer
The y coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/height integer
The drop zone and drag options’ height in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/width integer
The drop zone and drag options’ width in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/additionalOptions array
Contains any additional answer options information if the item is a Standard Drag and Drop question.
dragDropQuestions/additionalOptions/options array
Contains the additional drag options.
dragDropQuestions/additionalOptions/options/id integer
The additional drag option’s unique identifier.
dragDropQuestions/additionalOptions/options/text string
The additional drag option’s text in HTML format.
dragDropQuestions/additionalOptions/options/mediaItem object
Contains any media attached to the additional drag option.
dragDropQuestions/additionalOptions/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/additionalOptions/options/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/customMarks array
Contains the custom marks information if the item is a Standard Drag and Drop question with weighted marking enabled.
dragDropQuestions/customMarks/dragItem integer
The drag option’s unique identifier.
dragDropQuestions/customMarks/dropZone integer
The drop zone’s unique identifier.
dragDropQuestions/customMarks/mark integer
The custom mark assigned to the drag option and drop zone combination.
dragDropQuestions/backgroundImage array
Contains the background image’s information if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/backgroundImage/mediaItem array
Contains the media used for the background image’s information.
dragDropQuestions/backgroundImage/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/backgroundImage/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/backgroundImage/height integer
The background image’s height in PX.
dragDropQuestions/backgroundImage/width integer
The background image’s width in PX.
allowOpenImageInPopup Boolean optional
Determines whether the Allow image to be opened in popup setting is enabled if an image is added to Step 3 of the item. Defaults to false if omitted.
mediaLayout enumeration optional
The media layout if media is added to Step 3 of the item. The layout options are AutoSelect, LeftAnswer, RightAnswer, AboveQuestionText, AboveAnswer, and BelowAnswer.
enemyItems array optional
Contains the information of any items the item has an enemy relationship with.
enemyItems/id integer
The item’s unique identifier.
sectionEnemyItems array optional
Contains the information of any items the item has a section-level enemy relationship with.
sectionEnemyItems/id integer
The item’s unique identifier.
itemSet object optional
Contains the item set that the item is in.
itemSet/id integer
The item set’s unique identifier.
itemSet/position integer
The item’s position within the item set.
tools array optional
Contains the information of any tools added to the item.
tools/name enumeration
The type of tool. The available tools are Calculator, Caliper, Notepad, and Protractor.
tools/settings array
Contains the tool’s name and settings.
tools/settings/mode enumeration
The tool mode. The available modes are Basic (calculator), Pixels (caliper; HTML subjects only), and Scientific (calculator).
tools/settings/label string
The name given to the tool.
owner object optional
The item owner’s information.
owner/id integer
The item owner’s unique identifier.
itemType enumeration optional
Determines whether the item is a Question or a Survey item.
subject object mandatory
Contains the subject that the item is in.
subject/id integer
The subject’s unique identifier.
subject/reference string
The subject’s unique reference code.
assistiveMedia object optional
Contains any assistive media to be attached to the first question stem block.
assistiveMedia/name string
The assistive media’s name. This has to include the filetype extension.
assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the new item’s details.
{
"id": 1,
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/1",
"errors": null
}
Updating an item
Send a request to the endpoint to update a specific item.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
content-type |
header MANDATORY |
application/json or application/xml |
Determines data format of the request, which can be either JSON or XML. |
content-length |
header MANDATORY |
{number} |
Determines the number of characters passed in the body of the request, where {number} is a numerical figure. This is usually automatically calculated when the request is sent. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
id |
path MANDATORY |
/api/v2/Item/{id} |
Updates specified item, where {id} is the item’s unique identifier. |
Sample request
At least one property must be updated in the request. The following request contains the minimum required request body to update an item. Refer to the request body schema for all properties that can be updated.
{
"name": "Geography question 1"
}
Request body schema
The request body schema contains a description of every property that can be passed with this endpoint.
assistiveMedia object
Contains any assistive media to be attached to the first question stem block.
assistiveMedia/name string
The assistive media’s name. This has to include the filetype extension.
assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
isMultipleChange Boolean
folder object
Contains the folder that the item is in.
folder/id integer
The folder’s unique identifier.
folder/position integer
The position of the item within the folder.
markScheme object
Contains the mark scheme’s information.
markScheme/name string
The mark scheme’s file name.
markscheme/data string
The mark scheme’s file data in encoded Base64 format.
name string
The item’s name.
questionText string
The first question stem block in HTML format. If the item has multiple question stem blocks, use the stemComponents object.
htmlText string
The first question stem block in HTML format.
mathML string
If the first question stem block contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
mark integer
The item’s assigned mark.
citations string
Any citations added to the item in HTML format.
seedUsageCount integer
The item’s seeded usage count, which is an integer assigned to the item when migrating item statistics from another system.
seedPValue integer
The item’s seeded p value, which is an integer assigned to the item when migrating item statistics from another system.
status enumeration
The item’s workflow status. The default workflow statuses are Draft, To Review, Reviewed, Live, and Withdrawn. Every item starts at Draft and must be set to Live before being able to be added to a test form. Custom workflow statuses can also be created and assigned to items.
itemPurpose enumeration
The item’s assigned purpose. This can be either Summative, Formative, or Unspecified.
markingType enumeration
Determines whether the item is set to be Computer or Human-marked.
comment string
Any comment left on the item in text format.
commentIsPrivate Boolean
Determines whether the comment is a private comment (only viewable by users with the Comment Manager permission) or not.
generalFeedback object
Contains any general candidate feedback added to the item.
generalFeedback/text string
The feedback text in HTML format.
generalFeedback/htmlText string
The feedback text in HTML format.
generalFeedback/mediaItems array
Contains any media added to the feedback.
generalFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
generalFeedback/mediaItems/id integer
The media’s unique identifier.
generalFeedback/sourceMaterials array
Contains any source material added to the feedback.
generalFeedback/sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
generalFeedback/sourceMaterials/id integer
The source material’s unique identifier.
correctFeedback object
Contains any correct candidate feedback added to the item.
correctFeedback/text string
The feedback text in HTML format.
correctFeedback/htmlText string
The feedback text in HTML format.
correctFeedback/mediaItems array
Contains any media added to the feedback.
correctFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
correctFeedback/mediaItems/id integer
The media’s unique identifier.
correctFeedback/sourceMaterials array
Contains any source material added to the feedback.
correctFeedback/sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
correctFeedback/sourceMaterials/id integer
The source material’s unique identifier.
incorrectFeedback object
Contains any incorrect candidate feedback added to the item.
incorrectFeedback/text string
The feedback text in HTML format.
incorrectFeedback/htmlText string
The feedback text in HTML format.
incorrectFeedback/mediaItems array
Contains any media added to the feedback.
incorrectFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
incorrectFeedback/mediaItems/id integer
The media’s unique identifier.
incorrectFeedback/sourceMaterials array
Contains any source material added to the feedback.
incorrectFeedback/mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
incorrectFeedback/sourceMaterials/id integer
The source material’s unique identifier.
mediaItems array
Contains any media embedded on the item.
mediaItems/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
mediaItems/id integer
The media’s unique identifier.
sourceMaterials array
Contains any source material attached to the item.
sourceMaterials/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
sourceMaterials/id integer
The source material’s unique identifier.
stemComponents array
A collection of text, images or equations that form each question stem.
stemComponents/text string
The question stem’s text in HTML format.
stemComponents/mathML string
Any formula authored using the Equation Editor in Mixed subjects.
stemComponents/media object
Contains any media in the question stem for items in Mixed subjects.
stemComponents/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
stemComponents/media/id integer
The media’s unique identifier.
multipleChoiceQuestions array
Contains information relating to the Multiple Choice question type.
A Multiple Choice question offers candidates a set of possible answers to a problem. One of these answers is the correct answer and the others are plausible but incorrect answers (also known as “distractors”). Candidates can select one answer option as their response.
multipleChoiceQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
multipleChoiceQuestions/optionList object
Contains the answer options’ information.
multipleChoiceQuestions/optionList/options array
Contains each answer option’s information.
multipleChoiceQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
multipleChoiceQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
multipleChoiceQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
multipleChoiceQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleChoiceQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
multipleChoiceQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleChoiceQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleChoiceQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
multipleChoiceQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleChoiceQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
multipleChoiceQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleChoiceQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleChoiceQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
multipleChoiceQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleChoiceQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleChoiceQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleChoiceQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleChoiceQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleChoiceQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleChoiceQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleChoiceQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
multipleChoiceQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery.
multipleChoiceQuestions/markType enumeration
Determines whether the Marking type for the question is Standard or Weighted.
multipleChoiceQuestions/tableOptionsHtml string
Include answer options as a table in HTML format to enable the Answer options as a table (HTML subjects only) Layout options setting.
multipleChoiceQuestions/rationaleEnabled Boolean
Determines whether the Show Answer Rationale setting has been enabled.
multipleResponseQuestions array
Contains information relating to the Multiple Response question type.
A Multiple Response question offers candidates a set of possible answers to a question. The options contain correct answers and plausible but incorrect answers (also known as distractors). Candidates can select multiple answer options as their response.
multipleResponseQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
multipleResponseQuestions/optionList object
Contains the answer options’ information.
multipleResponseQuestions/optionList/options array
Contains each answer option’s information.
multipleResponseQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
multipleResponseQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
multipleResponseQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
multipleResponseQuestions/optionList/options/id integer
The answer option’s unique identifier.
multipleResponseQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
multipleResponseQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
If set to Answer options as a table (HTML subjects only), separate the first row using the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/htmlText string
The answer option text in HTML format.
multipleResponseQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleResponseQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
multipleResponseQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleResponseQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
multipleResponseQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
If set to Answer options as a table (HTML subjects only), separate the first row using by the pipe symbol (for example, Paris|Berlin|Madrid|Copenhagen).
multipleResponseQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
multipleResponseQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
multipleResponseQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
multipleResponseQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
multipleResponseQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
multipleResponseQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
multipleResponseQuestions/optionList/options/weightedMark integer
The mark assigned to the answer option if the Marking type is set to Weighted.
multipleResponseQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
multipleResponseQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
multipleResponseQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
multipleResponseQuestions/addLabelsToOptions Boolean
Determines whether the answer options have added labels for candidate delivery.
multipleResponseQuestions/markType enumeration
Determines whether the Marking type for the question is Standard, Weighted, or Combination.
multipleResponseQuestions/combinations array
Contains the answer option combinations’ information if the Marking type is set to Combination.
multipleResponseQuestions/combinations/Id integer
The answer option combination’s unique identifier.
multipleResponseQuestions/combinations/Mark integer
The number of marks for the answer option combination.
multipleResponseQuestions/combinations/Title string
The name attributed to the answer option combination.
multipleResponseQuestions/combinations/Options array
Contains the information for the individual answer options that make up the answer option combination.
multipleResponseQuestions/combinations/Options/Id integer
The answer option’s unique identifier.
multipleResponseQuestions/combinations/Options/Text string
The answer option’s label.
multipleResponseQuestions/maxSelections integer
The maximum number of answer options the candidate can select. This is determined by the Maximum number of candidate selections setting, the options for which are Equal to correct options, No Limit, or Custom.
multipleResponseQuestions/partialMarks Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled (true) or not (false).
multipleResponseQuestions/tableOptionsHtml string
Include answer options as a table in HTML format to enable the Answer options as a table (HTML subjects only) Layout options setting.
multipleResponseQuestions/rationaleEnabled Boolean
Determines whether the Show Answer Rationale setting is enabled.
essayQuestions array
Contains information relating to the Essay question type.
An Essay question asks candidates to provide an extended written response to a prompt.
essayQuestions/enableTextFormatting Boolean
Determines whether the Enable text formatting for candidates setting is enabled, letting candidates use basic formatting tools when writing their response.
essayQuestions/maxCharacters integer
The maximum number of characters allowed for the candidate’s response.
essayQuestions/numberOfLines integer
The number of lines provided for the candidate’s response if the test is being delivered on-screen.
essayQuestions/displayCounter Boolean
Determines whether the Display word counter setting is enabled, letting candidates view their current word count when writing their response.
essayQuestions/numberOfLinesPerResponse integer
The number of lines provided for the candidate’s response if the test is being delivered on paper.
essayQuestions/wordCounterLabel string
The name of the word counter if essayQuestions/displayCounter is true.
essayQuestions/textDirectionMode integer
Determines the Answer Input Direction for candidates. 0 is Left to right and 1 is Right to left.
shortAnswerQuestions array
Contains information relating to the Short Answer question type.
A Short Answer question requires candidates to submit a word in response to a prompt.
shortAnswerQuestions/requireCaseSensitive Boolean
Determines whether the Require answer to be case-sensitive setting is enabled.
shortAnswerQuestions/limitCandidateResponse Boolean
Determines whether the Limit candidate response setting is enabled, restricting how many characters candidates can enter into the answer field.
shortAnswerQuestions/maxCharacterCount integer
The maximum number of characters candidates can enter into the answer field if shortAnswerQuestions/limitCandidateResponse is true.
The maximum number of characters that candidates can enter for Advanced Short Answer questions is set at placeholder level.
shortAnswerQuestions/answerList object
Contains the correct answer information if the item is a Standard Short Answer question.
shortAnswerQuestions/answerList/answers array
The correct answer. Multiple correct answers are listed together.
shortAnswerQuestions/placeholderText string
The question and placeholder text in HTML format if the item is an Advanced Short Answer question. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
shortAnswerQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct answers setting is enabled if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders array
Contains the placeholders’ information if the item is an Advanced Short Answer question.
shortAnswerQuestions/placeholders/maxCharacterCount integer
Determines the maximum number of characters the candidate can enter into the placeholder if shortAnswerQuestions/limitCandidateResponse is true.
shortAnswerQuestions/placeholders/placeholderOptions string
The correct answer. Multiple correct answers for the placeholder are listed together.
eitherOrQuestions array
Contains information relating to the Either/Or question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a plausible but incorrect answer (also known as a distractor). Candidates can select one answer option as their response.
eitherOrQuestions/randomise Boolean
Determines whether the answer options are to be randomised for the candidate.
eitherOrQuestions/answerWidthRatio enumeration
Determines whether the answer option column width ratio is 50/50, 20/80, or 80/20 if the Layout options are set to Two columns.
eitherOrQuestions/optionList object
Contains the answer options’ information.
eitherOrQuestions/optionList/options array
Contains each answer option’s information.
eitherOrQuestions/optionList/options/assistiveMedia object
Contains any assistive media’s information.
eitherOrQuestions/optionList/options/assistiveMedia/name string
The assistive media’s name in Surpass.
eitherOrQuestions/optionList/options/assistiveMedia/data string
The assistive media’s file data in encoded Base64 format.
eitherOrQuestions/optionList/options/id integer
The answer option’s unique identifier.
eitherOrQuestions/optionList/options/contentType enumeration
Determines the content type for the answer option. This can be either RichText, an Image, or MathML (Mixed subjects only).
eitherOrQuestions/optionList/options/text string
The answer option text in HTML format. If the Layout options are set to Two columns, this information is added to the first column.
eitherOrQuestions/optionList/options/htmlText string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
eitherOrQuestions/optionList/options/mediaItem object
Contains any media used as the answer option.
eitherOrQuestions/optionList/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
eitherOrQuestions/optionList/options/mediaItem/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/answerColumns array
Contains the text, media, or mathML for each answer option column. Passing two arrays, one for each column, sets the Layout options to Two columns.
eitherOrQuestions/optionList/options/answerColumns/text string
The answer option text in HTML format.
eitherOrQuestions/optionList/options/answerColumns/mathML string
If the answer option contains formula authored using the Equation Editor (Mixed subjects) or WIRIS EDITOR math (HTML subjects), pass this information in MathML format.
eitherOrQuestions/optionList/options/answerColumns/media object
Contains any media used as the answer option.
eitherOrQuestions/optionList/options/answerColumns/media/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
eitherOrQuestions/optionList/options/answerColumns/media/id integer
The media’s unique identifier.
eitherOrQuestions/optionList/options/correct Boolean
Determines whether the answer option is the correct answer if the Marking type is set to Standard.
eitherOrQuestions/optionList/options/label string
The label text for the answer option if Add Labels for Candidate Delivery has been enabled.
eitherOrQuestions/optionList/options/rationaleText string
The rationale text for the answer option if Show Answer Rationale has been enabled.
eitherOrQuestions/optionList/options/exclusiveOption Boolean
Determines whether the answer option is set to be an Exclusive Option, meaning it cannot be selected in conjunction with other answer options.
numericalEntryQuestions array
Contains information relating to the Numerical Entry question type.
An Either/Or question offers candidates two possible answers to a problem: one of these is the correct answer and the other is a A Numerical Entry question requires candidates to submit a number in response to a prompt.
numericalEntryQuestions/specificValue integer
The correct answer entered in the Value field if the question requires a specific value as the correct answer.
numericalEntryQuestions/range object
Contains the correct answers’ information entered in the Min Value and Max Value fields if the the correct answer is set to be within a range.
numericalEntryQuestions/range/minValue integer
The minimum value for the range.
numericalEntryQuestions/range/maxValue integer
The maximum value for the range.
numericalEntryQuestions/decimalSeparator enumeration
Determines the separator format. This can be either Always Use Site Settings (Global), Always Use Decimals as Separators (Decimal), or Always Use Commas as Separators (Comma).
fillInTheBlankQuestions array
A Fill in the Blank question consists of a text string containing blank spaces where candidates can provide the missing words.
fillInTheBlankQuestions/requireCaseSensitive Boolean
Determines whether the Require answer(s) to be case-sensitive setting is enabled.
fillInTheBlankQuestions/placeholderText string
The question and placeholder text in HTML format. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
fillInTheBlankQuestions/placeHolders array
Contains the placeholders’ information.
fillInTheBlankQuestions/placeHolders/id integer
The placeholder’s unique identifier.
fillInTheBlankQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
fillInTheBlankQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
fillInTheBlankQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
fillInTheBlankQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when given as an answer. This property should always be true.
fillInTheBlankQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
fillInTheBlankQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate answers all blanks correctly setting is enabled.
voiceCaptureQuestions array
Contains information relating to the Audio Capture question type.
An Audio Capture question allows candidates to record a verbal response to a prompt.
voiceCaptureQuestions/timeLength integer
The maximum recording time in seconds. The maximum available recording time is five minutes (300 seconds) for Audio Capture questions in Mixed subjects, and 60 minutes (3600 seconds) in HTML subjects.
likertQuestions array
Contains information relating to the Likert survey question type.
A Likert survey item is a non-scored question type that lets candidates respond to a statement along a scale (for example, “1, 2, 3, 4, 5” or “Poor, Fair, Average, Good, Great”). Likert scales are used to measure candidates’ opinions on a given topic.
likertQuestions/isMatrixMode Boolean
Determines whether the Likert question is in Single (false) or Matrix (true) mode.
In Single mode, you can add one statement to your Likert item. In Matrix mode, you can add up to 20 statements.
likertQuestions/optionList object
Contains the answer options’ information.
likertQuestions/optionList/options array
Contains each answer option’s information.
likertQuestions/optionList/options/id integer
The answer option’s unique identifier.
likertQuestions/optionList/options/text string
The answer option text in HTML format.
likertQuestions/statementList object
Contains the list of statements’ information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements array
Contains the statement’s information if the likertQuestions/isMatrixMode is set to true.
likertQuestions/statementList/statements/id integer
The statement’s unique identifier.
likertQuestions/statementList/statements/text string
The statement’s text in HTML format.
extendedMatchingQuestions array
Contains information relating to the Extended Matching question type.
An Extended Matching question asks candidates to draw links between two lists of content. Candidates may be able to draw one or many links from and to each answer option. Candidates can delete links by right-clicking on links in legacy tests and selecting Remove in standard tests.
extendedMatchingQuestions/linkingType enumeration
Determines what linking type is being used: OneToOne, OneToMany, ManyToOne, or ManyToMany.
extendedMatchingQuestions/weightedMarking Boolean
Determines whether the Marking type is set to Standard (false) or Weighted marking (true).
extendedMatchingQuestions/leftBoxes array
Contains all the answer options on the left’s information.
extendedMatchingQuestions/leftBoxes/id integer
The answer option’s unique identifier.
extendedMatchingQuestions/leftBoxes/text string
The answer option’s text.
extendedMatchingQuestions/rightBoxes array
Contains all the answer options on the right’s information.
extendedMatchingQuestions/rightBoxes/id integer
The answer option’s unique reference code.
extendedMatchingQuestions/rightBoxes/text string
The answer option’s text.
extendedMatchingQuestions/correctLinks array
Contains all the matching answer option combinations’ information.
extendedMatchingQuestions/correctLinks/leftBoxId integer
The left answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/rightBoxId integer
The right answer option’s unique identifier.
extendedMatchingQuestions/correctLinks/mark integer
The matching answer option combination’s mark if extendedMatchingQuestions/weightedMarking is true.
extendedMatchingQuestions/enableManyToManyMarking Boolean
Determines whether the Enable Many to many marking selections setting is enabled (HTML subjects only). extendedMatchingQuestions/weightedMarking must also be true.
selectFromAListQuestions array
Contains information relating to the Select From a List question type.
A Select From a List question presents candidates with a string of text with certain words replaced by drop-down lists containing possible answers. At least one of these list items is the correct answer. The other list items are plausible but incorrect answers (also known as distractors).
selectFromAListQuestions/orderOptionsAlphabetically Boolean
Determines whether list items are ordered alphabetically within their list.
selectFromAListQuestions/placeholderText string
The question and placeholder text in HTML format. Placeholders must be included using the following format: <placeholder></placeholder> (and must match the number of placeholderOptions).
selectFromAListQuestions/placeHolders array
Contains the placeholders’ information.
selectFromAListQuestions/placeHolders/id integer
The placeholder’s unique identifier. Each placeholder represents a drop-down list.
selectFromAListQuestions/placeHolders/orderNumber integer
The placeholder’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions array
Contains the placeholder options’ information.
selectFromAListQuestions/placeHolders/placeholderOptions/id integer
The placeholder option’s unique identifier.
selectFromAListQuestions/placeHolders/placeholderOptions/orderNumber integer
The placeholder option’s order number. 0 is the first placeholder.
selectFromAListQuestions/placeHolders/placeholderOptions/isCorrect Boolean
Determines whether the placeholder options awards marks when selected as an answer.
selectFromAListQuestions/placeHolders/placeholderOptions/text string
The placeholder option’s text.
selectFromAListQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled.
fileAttachQuestions array
Contains information relating to the File Attach question type.
A File Attach question allows candidates to work in an external app (like a word processor or spreadsheet editor) and upload a file as their response. Candidates can be provided a template file to complete, let candidates work from a blank file, or ask candidates to provide their own files.
fileAttachQuestions/isManualMode Boolean
Determines whether the File Attach question is in Managed (false) or Manual (true) mode.
In Managed mode, candidates can work on up to five files. Candidates’ responses are automatically uploaded when they select Save in the external application.
In Manual mode, you can define the type and number of files candidates can download and upload. Candidates must select Upload in the test driver and find the file on their device’s local storage to submit their response.
fileAttachQuestions/downloadWording string
The download label wording if the question is in Manual mode.
fileAttachQuestions/uploadWording string
The upload label wording if the question is in Manual mode.
fileAttachQuestions/chooseFileButtonWording string
The upload button wording if the question is in Manual mode.
fileAttachQuestions/allowedExtensions string
The allowed file extensions accepted by the upload manager if the question is in Manual mode. Multiple file extensions are separated by the pipe symbol (for example, csv|txt).
fileAttachQuestions/files array
Contains the information for any files provided to the candidate for download.
fileAttachQuestions/files/title string
The download button text.
fileAttachQuestions/files/attachedFileType enumeration
The filetype. The following blank filetypes can be given: DOCX, DOC, XLSX, XLS, PPTX, PPT, MDB, ACCD, RDATA, RMD.
fileAttachQuestions/files/isSecureDoc Boolean
Determines whether the Secure File Attach setting is enabled if the question is in Managed mode.
Secure File Attach restricts the functionality of Microsoft Word and Excel instances opened by a Managed File Attach item in SecureClient. Candidates are only able to use Save, which uploads their response to SecureClient.
fileAttachQuestions/files/uploadLabel string
The upload button text if the question is in Managed mode.
fileAttachQuestions/files/attachmentType enumeration
Determines whether the file provided is a blank file (BlankFile) or a file uploaded by the item author (UploadedFile).
fileAttachQuestions/files/attachedFileName string
The file name if the file provided is an UploadedFile.
fileAttachQuestions/files/attachedFileData string
The file data in encoded Base64 format if the file provided is an UploadedFile.
fileAttachQuestions/minimumNumberOfFiles integer
The minimum number of files the candidate must upload if the question is in Manual mode.
fileAttachQuestions/maximumNumberOfFiles integer
The maximum number of files the candidate can upload if the question is in Manual mode.
fileAttachQuestions/maximumFileSize integer
The defined maximum file size in MB if the question is in Manual mode.
dragDropQuestions array
Contains information relating to the Drag and Drop question type.
A Drag and Drop question consists of text-based “drag options” that candidates must place in the appropriate “drop zones”. The available drag options might include distractors that are not associated with any drop zone.
dragDropQuestions/awardAllCorrect Boolean
Determines whether the Only award mark if candidate selects all correct options setting is enabled.
dragDropQuestions/maxItemsPerZoneType enumeration
Determines whether the maximum number of drag options per drop zone is Equal to maximum correct drag options (MaxCorrect), Equal to total amount of drag options (TotalCount), or a Custom (Custom) amount.
dragDropQuestions/customItemsPerZone integer
If the dragDropQuestions/maxItemsPerZoneType object is Custom, determines how many drag options per zone.
dragDropQuestions/type enumeration
Determines whether the item is a Standard or Advanced (HTML subjects only) Drag and Drop question.
dragDropQuestions/markType enumeration
Determines whether the marking is Standard, Balanced, or Weighted (Standard Drag and Drop questions in HTML subjects only).
dragDropQuestions/dropZones array
Contains the drop zones’ information.
dragDropQuestions/dropZones/id integer
The drop zone’s unique identifier.
dragDropQuestions/dropZones/title string
The drop zone’s title.
dragDropQuestions/dropZones/dragOptions array
Contains the drag options’ information.
dragDropQuestions/dropZones/dragOptions/id integer
The drag option’s unique identifier.
dragDropQuestions/dropZones/dragOptions/text string
The drag option’s text in HTML format.
dragDropQuestions/dropZones/dragOptions/mediaItem object
Contains any media attached to the drag option.
dragDropQuestions/dropZones/dragOptions/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/dropZones/dragOptions/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/dropZones/x integer
The x coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/y integer
The y coordinate for the drop zone starting from the top-left corner if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/height integer
The drop zone and drag options’ height in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/dropZones/width integer
The drop zone and drag options’ width in PX if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/additionalOptions array
Contains any additional answer options information if the item is a Standard Drag and Drop question.
dragDropQuestions/additionalOptions/options array
Contains the additional drag options.
dragDropQuestions/additionalOptions/options/id integer
The additional drag option’s unique identifier.
dragDropQuestions/additionalOptions/options/text string
The additional drag option’s text in HTML format.
dragDropQuestions/additionalOptions/options/mediaItem object
Contains any media attached to the additional drag option.
dragDropQuestions/additionalOptions/options/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/additionalOptions/options/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/customMarks array
Contains the custom marks information if the item is a Standard Drag and Drop question with weighted marking enabled.
dragDropQuestions/customMarks/dragItem integer
The drag option’s unique identifier.
dragDropQuestions/customMarks/dropZone integer
The drop zone’s unique identifier.
dragDropQuestions/customMarks/mark integer
The custom mark assigned to the drag option and drop zone combination.
dragDropQuestions/backgroundImage array
Contains the background image’s information if the item is an Advanced Drag and Drop question (HTML subjects only).
dragDropQuestions/backgroundImage/mediaItem array
Contains the media used for the background image’s information.
dragDropQuestions/backgroundImage/mediaItem/externalId string
If using the Nuxeo media repository: the media’s external reference. For more information about Nuxeo, read ‘About Media settings’ in About Site Settings options.
dragDropQuestions/backgroundImage/mediaItem/id integer
The media’s unique identifier.
dragDropQuestions/backgroundImage/height integer
The background image’s height in PX.
dragDropQuestions/backgroundImage/width integer
The background image’s width in PX.
allowOpenImageInPopup Boolean
Determines whether the Allow image to be opened in popup setting is enabled if an image is added to Step 3 of the item.
mediaLayout enumeration
The media layout if media is added to Step 3 of the item. The layout options are AutoSelect, LeftAnswer, RightAnswer, AboveQuestionText, AboveAnswer, and BelowAnswer.
enemyItems array
Contains the information of any items the item has an enemy relationship with.
enemyItems/id integer
The item’s unique identifier.
sectionEnemyItems array
Contains the information of any items the item has a section-level enemy relationship with.
sectionEnemyItems/id integer
The item’s unique identifier.
itemSet object
Contains the item set that the item is in.
itemSet/id integer
The item set’s unique identifier.
itemSet/position integer
The item’s position within the item set.
tools array
Contains the information of any tools added to the item.
tools/name enumeration
The type of tool. The available tools are Calculator, Caliper, Notepad, and Protractor.
tools/settings array
Contains the tool’s name and settings.
tools/settings/mode enumeration
The tool mode. The available modes are Basic (calculator), Pixels (caliper; HTML subjects only), and Scientific (calculator).
tools/settings/label string
The name given to the tool.
owner object
The item owner’s information.
owner/id integer
The item owner’s unique identifier.
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the updated item’s details.
{
"id": 1,
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/1",
"errors": null,
}
Deleting an item
Send a request to the endpoint to delete a specific item. No request body is required.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
id |
path MANDATORY |
/api/v2/Item/{id} |
Deletes specified item, where {id} is the item’s unique identifier. |
Sample response
If successful, the HTTP status code will be 200 and the response body will confirm the item has been deleted by returning a null id.
{
"permanentlyDeleted": true,
"id": null,
"href": null,
"errors": null,
"serverTimeZone": null
}
Assistive Media
Assistive media are small audio and video files that can be added to items so that candidates can hear content in a chosen language or watch a visual aid. Assistive media can be used to improve the accessibility of your items or create unique assessment materials (for example, language testing).
The Item API resource can be used to retrieve and update assistive media.
To learn more about assistive media, read Adding assistive media to an item and Using assistive media in the test driver.
Retrieving assistive media information
Send a request to the endpoint to retrieve information for a specific piece of assistive media using its ID. Refer to the available parameters to influence the response. No request body is required.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
id |
path OPTIONAL |
/api/v2/Item/{id}/AssistiveMedia/{id} |
Returns information for the specified item, where {id} is the item’s unique identifier, and {id} is the assistive media’s unique identifier. |
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the information in either JSON or XML format as requested.
{
"count": null,
"top": null,
"skip": null,
"pageCount": null,
"nextPageLink": null,
"prevPageLink": null,
"response": [
{
"name": "Question text.mp3",
"data": "QEBA",
"id": 1,
"href": "https://{your Surpass instance}.surpass.com/api/v2/Item/1/AssistiveMedia/1"
}
],
"errors": null,
"serverTimeZone": "GMT Standard Time"
}
Response schema
The response schema contains a description of every property that can be returned for this endpoint.
count integer
Details how many pieces of assistive media there are in total. This is null because the information retrieved is for a specific piece of media.
top integer
Details number of pieces of assistive media returned in the response. This is null because the information retrieved is for a specific piece of media.
skip integer
Details how many pieces of assistive media were skipped to display those in the response. This is null because the information retrieved is for a specific piece of media.
pageCount integer
Details how many pages of assistive media there are. This is null because the information retrieved is for a specific piece of media.
nextPageLink string
The endpoint to call the next page of assistive media. This is null because the information retrieved is for a specific piece of media.
prevPageLink string
The endpoint to call the previous page of assistive media. This is null because the information retrieved is for a specific piece of media.
response array
Contains the rest of the response.
name string
The assistive media’s name.
data string
The assistive media’s file data in encoded Base64 format.
id integer
The assistive media’s unique identifier.
href string
The endpoint to call the assistive media’s information, such as /api/v2/Item/{id}/AssistiveMedia/{id} where {id} is the item’s unique identifier and {id} is the assistive media’s unique identifier.
errors string
Information about any errors that occurred during the request.
serverTimeZone enumeration
The timezone of the server sending the response.
Updating assistive media
Send a request to the endpoint to update a specific item’s assistive media.
Parameters
Parameters are passed with the endpoint to influence the response. Header parameters are included in the request header. Path parameters are extensions of the endpoint, and query parameters follow ? after any path parameters.
Name |
Parameter |
Input |
Description |
---|---|---|---|
authorization |
header MANDATORY |
Basic {credentials} |
Basic authentication details must be passed to authorise the user’s request, where {credentials} is a Base64 encoded username:password string. |
content-type |
header MANDATORY |
application/json or application/xml |
Determines data format of the request, which can be either JSON or XML. |
content-length |
header MANDATORY |
{number} |
Determines the number of characters passed in the body of the request, where {number} is a numerical figure. This is usually automatically calculated when the request is sent. |
accept |
header OPTIONAL |
application/json or application/xml |
Determines data format of the response, which can be either JSON or XML. |
id |
path OPTIONAL |
/api/v2/Item/{id}/AssistiveMedia/{id} |
Updates specified item, where {id} is the item’s unique identifier, and {id} is the assistive media’s unique identifier. |
Sample request
At least one property must be updated in the request. The following request contains the minimum required request body to update an item and its assistive media. Refer to the request body schema for all properties that can be updated.
{
"name": "Question text.mp3",
"data": "QEBA"
}
Request body schema
The request body schema contains a description of every property that can be passed with this endpoint.
name string
The assistive media’s name.
data string
The assistive media’s file data in encoded Base64 format.
Sample response
If successful, the HTTP status code will be 200 and the response body will contain the updated item’s details.
{
"id": null,
"href": null,
"errors": null
}
Error Codes
Refer to the following table for information on error codes that may be encountered when using this resource.
Name |
Code |
Description |
---|---|---|
InternalServer |
1 |
Internal server error. |
Unauthorized |
3 |
The request has been sent by an unauthorised user. |
IncorrectFieldFormat |
4 |
A field in the request has not been completed in the correct format. |
InaccessibleOperation |
5 |
The request has been sent by a user with invalid permissions. |
InaccessibleData |
6 |
The request has been sent by a user with invalid permissions. |
MissingBody |
7 |
There is an issue with the request body. |
InvalidReference |
11 |
The unique reference code used in the request is invalid. |
InvalidInputParameters |
15 |
There is an issue with the path or query parameters. This could also be a question-specific issue, such as ‘Invalid aspect ratio’ for Advanced Drag and Drop questions. |
InvalidId |
16 |
The ID number used in the request is invalid. |
InvalidODataOperation |
19 |
There is an issue with the query parameters. |
BadRequest |
20 |
There is an issue with the /api/v2/Item?$skip={skip} query parameter, where {skip} is a number that should not exceed the total number of responses. |
TooManyMultipleChoiceQuestions |
75 |
Too many Multiple Choice question arrays have been included in the request. |
TooManyMediaItems |
76 |
Too many media items have been specified. |
TooManyCorrectAnswers |
77 |
Too many correct answers have been specified. |
MustSpecifyOneItemType |
78 |
More than one question type has been specified. |
UnknownItemType |
79 |
The item type does not exist in the Surpass API. |
MisMatchedItems |
80 |
The specified item and its accompanying parameters do not match. |
TooManyMultipleResponseQuestions |
81 |
Too many Multiple Response questions have been specified. |
TooManyEssayQuestions |
82 |
Too many Essay questions have been specified. |
TooManyShortAnswerQuestions |
84 |
Too many Short Answer questions have been specified. |
TooManyAnswers |
91 |
Too many answer options have been specified. |
InvalidItemType |
92 |
The specified item type does not exist. |
TooManyNumericalEntryQuestions |
93 |
Too many Numerical Entry questions have been specified. |
TooManyFillInTheBlankQuestions |
94 |
Too many Fill in the Blank questions have been specified. |
TooManySelectFromAListQuestions |
95 |
Too many Select From a List questions have been specified. |
TooManyEitherOrQuestions |
96 |
Too many Either/Or questions have been specified. |
MissingQuestionText |
115 |
questionText is missing from the request. |
MissingStemBlockContent |
116 |
stemComponents are missing from the request. |
DifferentColumnTypesInOptions |
117 |
answerColumns are not formatted correctly. |
IncorrectColumnsCountInOptions |
118 |
answerColumns are not formatted correctly. |
Further reading
Read the following articles to learn more about similar APIs, how to get started with the Surpass API v2, and how to get the best out of this reference documentation: