Skip to main content
The Incident Hook allows your system to receive real-time notifications whenever a proctoring incident is detected, updated, or resolved. This is critical for automated intervention or for syncing incident data with your internal compliance and monitoring systems.

Trigger

This hook is triggered when:
  • A new proctoring incident is created (e.g., AI detection or manual flag).
  • An incident’s status changes (e.g., from TRIGGERED to RESOLVED).
  • Severity or Resolution Notes are updated by a proctor or administrator.

Sample Payload

{
  "event_type": "incident.instance.updated",
  "payload": {
    "id": 134,
    "description": null,
    "status": "TRIGGERED",
    "severity": "LOW",
    "start_time": "2026-02-03T10:46:23.26+00:00",
    "end_time": null,
    "resolution_notes": null,
    "session": {
      "id": 2523,
      "uuid": "019c22ef-edc6-765d-9ab3-c2acf41b5253",
      "score": null,
      "status": "SUSPENDED",
      "created_at": "2026-02-03T09:57:55.341258+00:00",
      "updated_at": "2026-02-03T09:57:55.341258+00:00"
    },
    "tenant_id": 2050,
    "created_at": "2026-02-03T09:57:55.341258+00:00",
    "updated_at": "2026-02-03T09:57:55.341258+00:00"
  },
  "meta": {
    "version": 1,
    "sent_at": "2026-02-03T10:46:30.000Z"
  }
}

Payload Definition

Event Envelope

FieldDefinitionTypeNotes
event_typeLogical name of the emitted event.Stringincident.instance.create or incident.instance.updated
meta.versionSchema version for the payload.IntegerCurrent value: 1.
meta.sent_atTimestamp when the event was published.ISO 8601Always present in UTC.

Incident Payload

FieldDefinitionTypeTypical Values / Notes
idUnique identifier of the incident.IntegerPositive auto-increment.
descriptionDetailed incident narrative.JSONNull until rich-text notes are added.
statusLifecycle state of the incident.EnumTRIGGERED, RESOLVED, DISMISSED, REOPENED.
severityImpact level assigned.EnumLOW, MEDIUM, HIGH.
start_timeWhen the incident began.UTC TimestampAlways populated.
end_timeWhen the incident closed.UTC TimestampSet when resolved or dismissed.
resolution_notesPost-incident summary.JSONNull until added by a responder.
tenant_idOwning tenant for scoping.IntegerMaps to customer tenant identifier.
created_atRecord creation time.UTC TimestampSet automatically.
updated_atLast update time.UTC TimestampUpdates on every change.

Session Snapshot

FieldDefinitionTypeTypical Values / Notes
idID of the related session.IntegerInternal primary key.
uuidGlobally unique session ID.UUIDStable for the session lifetime.
statusSession lifecycle status.EnumCREATED, IN_PROGRESS, PAUSED, STOPPED, SUSPENDED, COMPLETED.
scoreAssessment score.IntegerNull until scoring completes.
created_atSession creation time.UTC TimestampSet when provisioned.
updated_atLast session update time.UTC TimestampReflects most recent status/data change.