externalId. Each time you submit documents for the same externalId, a new upload is
added to the existing case. Credentials (extracted documents) accumulate across all uploads.
Create a case / add an upload
externalId already exists for your organization, the files are added as a new upload
to the existing case. If not, a new case is created.
Request fields
file[]
required
One or more document files. Accepted formats: PDF, PNG, JPG, JPEG, WebP, ZIP.
Up to 20 files per request. Max 30 MB per file, 40 MB total payload.
Files inside a ZIP that are not of a supported type will appear in the upload’s
files[]
list but will not be processed. PDFs are limited to 130 pages.string
required
Your reference for this case: the candidate ID, application number, or any identifier
that maps to a person in your system. Unique per organization. Subsequent submissions
with the same
externalId append to the existing case.string (JSON array)
Which capabilities to run on this upload. Valid values:
"extraction", "forensics",
"translation". Defaults to all three when omitted.boolean
default:"true"
Whether to run AI document classification. When
true (default), TruEnroll analyses the
uploaded files and splits them into credentials, one per education qualification
identified. When false, the requested features run directly against the raw uploaded
files instead of classified credentials. Use this only if you know the document type in advance.object (JSON)
Arbitrary key-value pairs attached to the case. Values must be strings, numbers, or booleans.
Optional headers
string
Makes the upload safe to retry. If a request fails or times out, resend it with the same
Idempotency-Key and an identical payload, and TruEnroll returns the original upload instead
of creating a duplicate. Reusing a key with a different payload returns 409 Conflict.A successful submission returns
202 Accepted. The files are accepted and processing
runs asynchronously. Watch webhooks or poll GET /cases/{id} for results.Example
Response fields
boolean
Always
true on a successful response.string
Human-readable confirmation, e.g.
"Upload accepted".object
Get a case
Path parameters
string
required
TruEnroll case ID (
caseId) returned when the case was created.Response fields
object
List cases
Query parameters
string
Filter by your external reference.
number
Number of results per page. Default:
20, max: 100.number
Number of results to skip for pagination. Default:
0.Delete a case
GET requests return
404. A deleted case cannot receive new uploads. Submitting the same externalId after
deletion returns 409 Conflict.
Path parameters
string
required
TruEnroll case ID.
204 No Content on success.
Error codes
Features & limits
Full details on upload constraints and feature capability requirements.