Upload the loan approval record
POST
/v1/loans/{ref}/lar
const url = 'http://localhost:8080/v1/loans/example/lar';const options = {method: 'POST'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:8080/v1/loans/example/larAccepts the LAR either as multipart/form-data (the file, in any supported LAR format) or as a raw JSON body in the canonical LAR format; it is parsed with the configured LAR profile and its fields recorded with provenance. Replacing the LAR while the loan is in review re-runs reconciliation. Admin, manager or specialist, or an API key with intake:write. 404 for an unknown reference, 409 unless the loan is in intake, processing or review, 400 for an empty body, 422 when the package would exceed documents.max_package_mb or the license has expired.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”ref
required
string
Responses
Section titled “Responses”OK
Media typeapplication/json
Array<object>
object
id
required
string format: uuid
loanId
required
string format: uuid
docType
required
string
originalName
required
string
sha256
required
string
byteSize
required
integer | string format: int64
pageCount
required
null | integer | string format: int32
isScanned
required
null | boolean
isLar
required
boolean
larProfileId
required
null | string format: uuid
uploadedAt
required
string format: date-time
Examplegenerated
[ { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "loanId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "docType": "example", "originalName": "example", "sha256": "example", "byteSize": 1, "pageCount": 1, "isScanned": true, "isLar": true, "larProfileId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "uploadedAt": "2026-04-15T12:00:00Z" }]