Event Notifications Service events
When a pre-defined event occurs, it triggers the Event Notifications Service to send a POST request to your callback URL.
This article is a comprehensive reference article of all the Event Notifications Service events.
In this section
Item Authoring
Item
Event is sent when an item is created, updated, or deleted (permanently, from the recycle bin).
Event object
{
"EventSourceType": 2,
"EventType": 1,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/Item/1",
"Date": "2018-03-14T17:46:38.077",
"Data": {
"Action": "Created",
"SubjectReference": "Subject1",
"ItemId": "1",
"Status": "Draft"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event type’s unique identifier, which for an item event is 1.
Url string
The resource URI for the event. The endpoint is /api/v2/Item/{id}, where {id} is the item’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
Determines whether the item was Created, Updated, or Deleted.
Data/SubjectReference string
The subject’s unique reference code.
Data/ItemId string
The item’s unique identifier.
Data/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.
ItemList
Event is sent when an item list is created or updated, or deleted.
Event object
{
"EventSourceType": 2,
"EventType": 2,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/ItemList/1",
"Date": "2018-04-14T17:46:38.077",
"Data": {
"Action": "Created",
"SubjectReference": "Subject1",
"ItemId": "1",
"Status": "Draft",
"ItemListReference": "ItemList1"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event’s unique identifier, which for an item list event is 2.
Url string
The resource URI for the event. The endpoint is /api/v2/ItemList/{id}, where {id} is the item list’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
Determines whether the item list was Created or Updated.
Data/SubjectReference string
The subject’s unique reference code.
Data/ItemId string
The item’s unique identifier.
Data/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.
Data/ItemListReference string
The item list’s unique reference code.
ItemListItem
Event is sent when an item is added to or removed from an item list.
Event object
{
"EventSourceType": 2,
"EventType": 7,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/Item/1",
"Date": "2019-03-14T18:43:38.077",
"Data": {
"Action": "Created",
"SubjectReference": "Subject1",
"ItemId": "1",
"Status": "Draft",
"ItemListReference": "ItemList1"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event type’s unique identifier, which for an item list item event is 7.
Url string
The resource URI for the event. The endpoint is /api/v2/Item/{id}, where {id} is the item’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
Determines whether the item was added to (Created) or removed from (Deleted) an item list.
Data/SubjectReference string
The subject’s unique reference code.
Data/ItemId string
The item’s unique identifier.
Data/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.
Data/ItemListReference string
The item list’s unique reference code.
ItemSet
Event is sent when an item set is created, updated, or deleted (permanently, from the recycle bin).
Event object
{
"EventSourceType": 2,
"EventType": 16,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/ItemSet/1",
"Date": "2020-01-14T19:46:31.077",
"Data": {
"Action": "Created",
"SubjectReference": "Subject1",
"ItemId": "1",
"Status": "Draft"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event type’s unique identifier, which for an item set event is 16.
Url string
The resource URI for the event. The endpoint is /api/v2/ItemSet/{id}, where {id} is the item set’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
Determines whether the item set was Created or Updated.
Data/SubjectReference string
The subject’s unique reference code.
Data/ItemId string
The item set’s unique identifier.
Data/Status enumeration
The item set’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.
ItemsMoved
Event is sent when an item is moved to a different subject.
Event object
{
"EventSourceType": 2,
"EventType": 8,
"Date": "2018-03-14T17:46:38.077",
"Data": {
"Items": [{"Id": "1", "Url": "https://{your Surpass instance}.surpass.com/api/v2/Item/1"}],
"OldSubject": "Subject1",
"NewSubject": "Subject2"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event type’s unique identifier, which for an items moved event is 8.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Items array
Contains the moved item(s).
Data/Items/ItemId string
The item’s unique identifier.
Data/Items/Url string
The resource URI for the item. The endpoint is api/v2/Item/{id}, where {id} is the item’s unique identifier.
Data/OldSubject string
The old subject’s unique reference code.
Data/NewSubject string
The new subject’s unique reference code.
Tasks
(Authoring Task) ItemSubmitted
Event is sent when a task assignee has submitted an item in an Authoring task.
Event object
{
"EventType": 17,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/ItemAuthoringTask/1",
"Date": "2020-01-14T19:46:31.077",
"Data": {
"Action": "Updated",
"TaskId": "1",
"TaskReference": "Subject1",
"AssigneeId": "1",
"AssigneeName": "Sanjib Datta",
"ItemId": "1"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s, which for an Authoring task item submitted event is ItemSubmitted (or 17).
Url string
The resource URI for the event. The endpoint is /api/v2/ItemAuthoringTask/{id}, where {id} is the Authoring task’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information, embedded as a string.
Data/Action enumeration
A task assignee submitting an item is recorded as an Updated (Authoring task) action.
Data/TaskId string
The Authoring task’s unique identifier.
Data/TaskReference string
The Authoring task’s unique reference code.
Data/AssigneeId string
The task assignee’s unique identifier.
Data/AssigneeName string
The task assignee’s name.
Data/ItemId string
The submitted item’s unique identifier.
TaskFinalised
Event is sent when a task is finalised.
Event object
{
"EventType": "15",
"Url": "https://{your Surpass instance}.surpass.com/api/v2/ItemReviewTask/1",
"Date": "2024-02-27T12:43:38.630",
"Data": {
"Action": "Updated",
"TaskType": 1,
"ReviewType": 0
}
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a task finalised event is 15.
Url string
The resource URI for the event. The endpoint is one of /api/v2/GeneralTask/{id}, /api/v2/ItemReviewTask/{id}, /api/v2/ItemAuthoringTask/{id}, or /api/v2/StandardSettingTask/{id}, where {id} is the task’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
A task being finalised is recorded as an Updated (task) action.
Data/TaskType enumeration
Indicates the task type. The possible values are:
- 0 – General task.
- 1 – Review task.
- 2 – Authoring task.
- 3 – Standard Setting task.
Data/ReviewType enumeration
If task is a Review task, determines the type of Review task:
- 0 – Shared Review task.
- 1 – Individual Review task.
- 2 – Item Analysis task.
Test Creation
Test
Event is sent when a test is created, updated, or deleted (permanently, from retired to deleted).
Event object
{
"EventType": 12,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/Test/1",
"Date": "2022-01-15T17:46:38.087",
"Data": {
"TestId": "1",
"SubjectReference": "Subject1",
"Status": "Draft",
"Action": "Created"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a test event is 12.
Url string
The resource URI for the event. The endpoint is /api/v2/Test/{id}, where {id} is the test’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/TestId string
The test’s unique identifier.
Data/SubjectReference string
The subject’s unique reference code.
Data/Status enumeration
The test’s workflow status. The available workflow statuses are Draft, Live, and Retired. Every test starts at Draft and must be set to Live before any of its test forms can be scheduled.
Data/Action enumeration
Determines whether the test was Created, Updated, or Deleted.
TestForm
Event is sent when a test is created, updated, or deleted (permanently, from retired to deleted).
Event object
{
"EventType": 13,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestForm/1",
"Date": "2022-01-15T17:46:38.087",
"Data": {
"TestFormId": "1",
"Status": "Draft",
"Action": "Created"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a test form event is 13.
Url string
The resource URI for the event. The endpoint is /api/v2/TestForm/{id}, where {id} is the test form’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/TestId string
The test form’s unique identifier.
Data/Status enumeration
The test form’s workflow status. The available workflow statuses are Draft, Live, and Retired. Every test form starts at Draft and must be set to Live before it can be scheduled.
Data/Action enumeration
Determines whether the test form was Created, Updated, or Deleted.
Test Administration
ExamScheduled
Event is sent when the test form has been generated and test form content and settings (including item content) are locked.
Event object
{
"EventType": 10,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestSession/NV36GT8P",
"Date": "2021-06-23T11:30:41.591",
"Data": {
"Keycode": "NV36GT8P"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a test scheduled event is 10.
Url string
The resource URI for the event. The endpoint is /api/v2/TestSession/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Keycode string
The candidate’s unique keycode, used to enter their test.
ExamReady
Event is sent when the test window is open and the test is ready to be sat by the candidate.
Event object
{
"EventType": 11,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestSession/NV36GT8P",
"Date": "2021-06-23T11:29:29.593",
"Data": {
"Keycode": "NV36GT8P"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a test ready event is 11.
Url string
The resource URI for the event. The endpoint is /api/v2/TestSession/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Keycode string
The candidate’s unique keycode, used to enter their test.
ExamStarted
Event is sent when a test is in progress (including any return to being in progress, for example from being unpaused).
Event object
{
"Id": "1",
"EventType": 6,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestSession/NV36GT8P",
"Date": "2022-06-23T11:30:41.591",
"Data": {
"KeyCode": "DJV9XGD3",
"ExamState": "6"
}
}Response schema
The test created event schema contains a description of every property in the event object.
Id string
The test session’s unique identifier.
EventType enumeration
The event type’s unique identifier, which for a test started event is 6.
Url string
The resource URI for the event. The endpoint is /api/v2/TestSession/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Keycode string
The candidate’s unique keycode, used to enter their test.
Data/ExamState string
The test session’s exam state, which for a test started event is 6.
ExamChange
Event is sent when a test script is warehoused and marking data is available (including if the script is remarked).
Event object
{
"EventType": 0,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/Result/NV36GT8P",
"Date": "2021-01-14T17:26:31.083",
"Data": {
"KeyCode": "DJV9XGD3",
"ExamState": "13"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for an exam change event is 0.
Url string
The resource URI for the event. The endpoint is /api/v2/Result/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Keycode string
The candidate’s unique keycode, used to enter their test.
Data/ExamState string
The test session’s exam state, which for a test result event is 13.
OutputTypePaperAwaitingMarking
Event object
{
"EventType": 5,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestSchedule/NV36GT8P/ItemMarks",
"Date": "2022-06-23T11:30:41.591",
"Data": {
"ExamState": "15"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for an awaiting paper marking event is 5.
Url string
The resource URI for the event. The endpoint is /api/v2/TestSchedule/{keycode}/ItemMarks, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/ExamState string
The test session’s exam state, which for an awaiting paper marking event is 15.
Event is sent when the test form is ready for paper marking (in the Paper Mark screen).
UploadResponsesAwaitingPaperResponseUpload
Event is sent when the test form is awaiting responses to be manually uploaded (using the Take on Paper option in the Invigilate screen, exam state 19: PaperResponseUpload).
Event object
{
"EventType": 4,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TestSchedule/NV36GT8P/ItemMarks",
"Date": "2022-06-23T11:30:41.591",
"Data": {
"ExamState": "19"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for an awaiting responses upload event is 4.
Url string
The resource URI for the event. The endpoint is /api/v2/TestSchedule/{keycode}/ItemMarks, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/ExamState string
The test session’s exam state, which for an awaiting responses upload event is 19.
Event is sent when the test form is set to Take on Paper in Invigilate.
RescoredResult
Event is sent when a test script has been rescored and the latest marking data is available.
Event object
{
"EventType": 0,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/AnalyticsResult/NV36GT8P",
"Date": "2021-01-14T17:26:31.083",
"Data": {
"ExamState": "101"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a rescored result event is 0.
Url string
The resource URI for the event. The endpoint is /api/v2/AnalyticsResult/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/ExamState string
The test session’s exam state, which for a rescored result event is 101.
SecureMarkerExamWarehoused
Event is sent when a test script is warehoused and marked (or re-marked) in SecureMarker.
Event object
{
"EventType": 14,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/Result/NV36GT8P",
"Date": "2021-01-14T17:26:31.083",
"Data": {
"KeyCode": "DJV9XGD3",
"ExamState": "14",
"ExamFinished": "true",
"ExamMarked": "true"
}
}Response schema
The test created event schema contains a description of every property in the event object.
EventType enumeration
The event type’s unique identifier, which for a SecureMarker exam warehoused event is 14.
Url string
The resource URI for the event. The endpoint is /api/v2/Result/{keycode}, where {keycode} is the test’s keycode.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Keycode string
The candidate’s unique keycode, used to enter their test.
Data/ExamState string
The test session’s exam state, which for a SecureMarker exam warehoused event is 13.
Data/ExamFinished Boolean
Determines whether the exam has been warehoused (true) or not (false).
Data/ExamMarked Boolean
Determines whether the exam has been marked in SecureMarker (true) or not (false).
Setup
TagValue
Event is sent when a tag value is created.
Event object
{
"EventSourceType": 2,
"EventType": 3,
"Url": "https://{your Surpass instance}.surpass.com/api/v2/TagGroup/1",
"Date": "2017-11-12T17:32:38.077",
"Data": {
"Action": "Created",
"SubjectReference": "Item1"
"TagGroupId": 1,
"TagValue": "Tag Value 1"
}
}Response schema
The item created event schema contains a description of every property in the event object.
EventSourceType enumeration
The database from which the event is sent, which can be one of the following:
- 0 – SecureAssess
- 1 – DataWarehouse
- 2 – ItemAuthoring
- 3 – ItemBank
- 4 – Administration
EventType enumeration
The event type’s unique identifier, which for a tag value event is 3.
Url string
The resource URI for the event. The endpoint is /api/v2/TagGroup/{id}, where {id} is the tag group’s unique identifier.
Date string
The date and time the event is sent by the database, in YYYY-MM-DDTHH:MM:SS format.
Data object
Contains the event’s information.
Data/Action enumeration
Determines whether the tag value was Created or Updated.
Data/SubjectReference string
The subject’s unique reference code.
Data/TagGroupId string
The tag group’s unique identifier.
Data/TagValue string
The tag value’s name.
Further reading
Now you know what the Event Notifications Service events are, read the following articles to learn more: