Case
A case is the central unit of work. It is identified by yourexternalId and groups all
document submissions for a single candidate or evaluation subject. Each submission adds an
upload to the case.
externalIdis unique per organization. Submitting to an existingexternalIdadds a new upload to the existing case rather than creating a new one.- Status is aggregate. A case is
completedonly when every upload — and every enabled feature within each upload — has reached a terminal state. - Soft delete. Deleting a case excludes it from list results; the case cannot receive new uploads.
Credential
A credential is the structured representation of a single education qualification identified by classification. One uploaded file can produce multiple credentials — for example, a transcript covering two degrees produces two credentials, one per qualification. Non-education documents (ID cards, cover letters, etc.) are identified and excluded from further processing. A credential holds:- The document type (e.g., academic transcript, diploma)
- Candidate identity (name, date of birth)
- The issuing institution (name, country, accreditation)
- Qualification details (degree, program, enrollment period)
- A list of courses with codes, credits, and grades
Features
Features are opt-in capabilities you specify at case submission time. Your organization must be provisioned for a feature before it can be used — requesting an unavailable feature fails synchronously with403 before any files are uploaded.
| Feature | What it does | Requirement |
|---|---|---|
extraction | AI extraction of candidate identity, institution, courses, and grades | Always available |
forensics | Document fraud and tamper detection, runs in parallel with extraction | Must be enabled for your organization |
translation | Page-structured readable representation of each file | Must be enabled for your organization |
accreditationScan | Institution accreditation status lookup | Must be enabled for your organization |
API keys
Partner API keys are provisioned by your TruEnroll account manager and scoped to your organization. All Partner API routes (/partner/v1/...) require a partner key — other
key types are rejected.
Webhooks
TruEnroll delivers results as events rather than requiring you to poll. A webhook configuration is a registered HTTPS endpoint that receives event payloads when processing stages complete. Webhook endpoints are provisioned for your organization withpartner audience, which
receives all case.*.completed and case.*.failed events for your cases.
Webhook event reference
Every event name, payload shape, and deduplication behavior.