ExamNovaDocumentation
Offline readyChangelog
Developer guide

REST, CSV, webhooks, SSO, and optional providers

Exchange assessment context and approved outcomes with stable identities, validation, idempotency, audit logs, and safe network boundaries.

MaintainerIntegratorReviewer
Assessment integration flowExternal IDs enter through validated runs; only finalized results leave through controlled exports.SourceValidateMap IDsConflict reportAssessmentPublished resultExport
Assessment integration flow. External IDs enter through validated runs; only finalized results leave through controlled exports.

Responsibility

Integrations complement the assessment domain. They synchronize the minimum roster or outcome context required and return approved results; they do not turn ExamNova into the master school system or LMS.

Components and data flow

Rules that must remain true

Failure modes

  • Email as an external primary key creates accidental duplicates.
  • Unbounded CSV processing exhausts memory or request time.
  • Retrying a result export without idempotency duplicates downstream records.
  • SSO domain matching without claim validation admits the wrong identity.

Safe extension guidance

  • Version payloads and document required/optional fields, error shapes, pagination, and limits.
  • Use background jobs for large runs and expose auditable progress.
  • Add provider-specific adapters behind a stable internal contract.
  • Document timeout, retry, backoff, circuit, and manual recovery behavior.

Required tests

Release gate: Publish an integration only with a documented contract, sample safe payloads, scopes, idempotency, errors, audit behavior, and adversarial tests.