Correct an application
Corrects an application you have already sent us, following JSON Merge Patch (RFC 7386):
- a field you omit is left alone
- a field you send as null is cleared
- an unknown field name is a 400, rather than a silent no-op you would never notice
You can correct sourceName, sourceRef, programCode, year, stream, intakeCode,
specialisations and description. programCode and year name a program together, so
sending only one keeps the other: send year alone to move the same program code to a
different commencement year.
specialisations replaces the whole set, the way sources does — send them all to change
one, an empty array to remove them. It is NOT refused after assessment: nothing is assessed
against a specialisation.
Three things it will refuse.
programCode,yearorstreamon an application that has already been assessed. The credit granted was worked out against the ones it had then, and nothing here can work it out again — that is a 409, and the answer is a new application.- A
sourceRefalready recorded against a different application of yours: also a 409, naming the application that holds it. - Clearing
programCodeoryear, or clearingsourceNamewhile asourceRefremains — an id with no system to interpret it is not findable.
Qualifications are not patched here. Add one with POST /institution/applications/{id}/qualifications.
Authentication
Paste a Keycloak access token (no "Bearer " prefix)
Path parameters
Request
Your own unique id for this application, e.g. an application number. Unique per sourceName.
Replaces ALL of your references for this record. Omit the field to leave them alone; send an empty array to remove them.
sourceName and sourceRef still edit the FIRST reference on its own and
leave any others untouched, so an existing integration is unaffected. If you
send both forms, sources wins.
The programme applied for, e.g. "4825". Resolved together with year.
Commencement (cohort) year. Resolved together with programCode: send just this to keep the same programme code in a different year.
Admission stream, e.g. "DOMESTIC_FP".
Your own code for the intake, e.g. "5269". Send null to clear it.
Correctable even after the application has been assessed, unlike programCode,
year and stream. Nothing is assessed against the intake — it says which term
the applicant is starting, not which rules their credit was worked out under — so
changing it leaves the credit already granted true.
Free-text note.
Response
The supplied fields were applied; everything else is unchanged.
Your own code for the intake the applicant is starting, e.g. "5269" for Term 3 2026.
Optional, but worth sending: our officers work applications in intake order, and one with no intake cannot be prioritised against the rest.
Send the code rather than the name. These are YOUR term codes, loaded from the intake schedule you supply us, so a code you use is a code we hold; one we do not recognise is refused with a 400 naming it.
Application status: RECEIVED, READY, PROCESSING, WITHDRAWN or FAILED.
Failure detail when status is FAILED; null otherwise.
Assessment workflow status once processed (e.g. DECIDED, CREDIT_TEAM_REVIEW); null while RECEIVED.
Your own unique id for this application, e.g. an application number. Unique per sourceName.
Your own references for this record, one per system you keep it in. A person or an application known by a different id in SITS than elsewhere carries both.
Optional. sourceName and sourceRef still work exactly as before and count
as the FIRST entry here, so nothing you have already built needs to change.
Send both forms and they are combined, with duplicates collapsed.
Order matters: the first entry is the one echoed back as sourceRef, and the
one shown in lists and in the change feed.
