List loan packages
GET
/v1/loans
const url = 'http://localhost:8080/v1/loans';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url http://localhost:8080/v1/loansReturns the latest package version of each loan, paged (page 1-based, size up to 200, default 50) in the { items, page, size, total } envelope. Filter by state (intake, processing, review, approved, boarding_staged, boarded, funded, sealed, rejected), assignee (user id), exceptions (true = unresolved exception findings) and borrower; sort with sort = updated (default), created, age, borrower, principal or principal_asc. expectedPrincipal is a decimal string. Any staff role or an API key with status:read. 400 for an unknown state or sort.
Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”State
string
Assignee
string format: uuid
Exceptions
boolean
Borrower
string
Page
integer | string format: int32
Size
integer | string format: int32
Sort
string
Updated (default) | created | age | borrower | principal | principal_asc
Responses
Section titled “Responses”OK
Media typeapplication/json
Page envelope: { items, page, size, total }.
object
items
required
Array<object>
object
id
required
string format: uuid
externalRef
required
string
packageVersion
required
integer | string format: int32
borrowerName
required
string
expectedPrincipal
required
null | string
state
required
string
hasExceptions
required
boolean
assigneeId
required
null | string format: uuid
createdBy
required
null | string format: uuid
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
page
required
integer | string format: int32
size
required
integer | string format: int32
total
required
integer | string format: int32
hasNext
boolean
Examplegenerated
{ "items": [ { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "externalRef": "example", "packageVersion": 1, "borrowerName": "example", "expectedPrincipal": "example", "state": "example", "hasExceptions": true, "assigneeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "createdBy": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "createdAt": "2026-04-15T12:00:00Z", "updatedAt": "2026-04-15T12:00:00Z" } ], "page": 1, "size": 1, "total": 1, "hasNext": true}