curl --request GET \
--url https://los.universal.rollout.com/api/loans/{id} \
--header 'Authorization: Bearer <token>' \
--header 'X-Rollout-Credential-Id: <api-key>'import requests
url = "https://los.universal.rollout.com/api/loans/{id}"
headers = {
"Authorization": "Bearer <token>",
"X-Rollout-Credential-Id": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'X-Rollout-Credential-Id': '<api-key>'}
};
fetch('https://los.universal.rollout.com/api/loans/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://los.universal.rollout.com/api/loans/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"X-Rollout-Credential-Id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://los.universal.rollout.com/api/loans/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("X-Rollout-Credential-Id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://los.universal.rollout.com/api/loans/{id}")
.header("Authorization", "Bearer <token>")
.header("X-Rollout-Credential-Id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://los.universal.rollout.com/api/loans/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["X-Rollout-Credential-Id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"loanNumber": "<string>",
"interestRate": 123,
"amount": 123,
"term": 123,
"loanToValue": 123,
"type": "<string>",
"purpose": "<string>",
"status": "<string>",
"statusDate": "<string>",
"applicationDate": "<string>",
"closingDate": "<string>",
"fundingDate": "<string>",
"rateAndTerms": {
"monthlyPayment": 123,
"escrowIncluded": true,
"pmiRequired": true,
"pmiRate": 123
},
"originalIds": {},
"original": {},
"created": "<string>",
"updated": "<string>",
"userParticipantIds": [
"<string>"
],
"borrowerParticipantIds": [
"<string>"
],
"stage": "<string>",
"stageHistory": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"scheduledStartDate": "2023-11-07T05:31:56Z",
"actualStartDate": "2023-11-07T05:31:56Z",
"completedDate": "2023-11-07T05:31:56Z",
"plannedDurationDays": 123,
"actualDurationDays": 123,
"assignee": {
"id": "<string>",
"name": "<string>",
"email": "<string>",
"phone": "<string>",
"role": "<string>"
},
"requiresReview": true,
"isReviewed": true,
"order": 123,
"isRequired": true,
"notes": "<string>",
"metadata": null
}
],
"loanFolder": "<string>",
"archived": true,
"mortgageType": "<string>",
"lienType": "<string>",
"amortizationType": "<string>",
"armInitialPeriodMonths": 123,
"armSubsequentPeriodMonths": 123,
"expectedRentalIncome": 123,
"expectedNetRentalIncome": 123,
"communityProperty": true,
"transactionDetail": "<string>",
"refinanceType": "<string>",
"refinanceProgram": "<string>",
"energyImprovement": "<string>",
"projectType": "<string>",
"proposedMonthlyPayment": {
"firstMortgagePI": 123,
"subordinatePI": 123,
"homeownersInsurance": 123,
"supplementalInsurance": 123,
"propertyTaxes": 123,
"mortgageInsurance": 123,
"associationDues": 123,
"other": 123,
"total": 123
},
"loanFeatures": {
"balloon": true,
"interestOnly": true,
"negativeAmortization": true,
"prepaymentPenalty": true,
"temporaryBuydown": true,
"other": "<string>"
},
"qualifyingFunds": {
"dueFromBorrower": 123,
"totalMortgageLoans": 123,
"totalCredits": 123,
"cashFromToBorrower": 123
},
"titleInfo": {
"heldInNames": "<string>",
"currentlyHeldInNames": "<string>",
"estateType": "<string>",
"leaseholdExpiration": "<string>",
"mannerOfTitle": "<string>",
"trustInfo": "<string>",
"tribalLand": true
},
"loanOriginator": {
"organizationName": "<string>",
"organizationNmlsId": "<string>",
"organizationStateLicense": "<string>",
"individualName": "<string>",
"individualNmlsId": "<string>",
"individualStateLicense": "<string>",
"email": "<string>",
"phone": "<string>"
},
"otherNewMortgageLoans": [
{
"creditor": "<string>",
"lienType": "<string>",
"monthlyPayment": 123,
"loanAmount": 123,
"creditLimit": 123
}
],
"giftsOrGrants": [
{
"assetType": "<string>",
"source": "<string>",
"deposited": true,
"value": 123
}
],
"rolloutUpdated": "<string>"
}{
"errorMessage": "<string>"
}{
"errorMessage": "<string>"
}{
"errorMessage": "Data for this credential is not ready yet. Please try again."
}Get Loan
Requires loans: true in the credential’s entitiesToSync selection and a connector that supports this operation. Choose what data to sync, or fix an entity that is not configured to sync.
curl --request GET \
--url https://los.universal.rollout.com/api/loans/{id} \
--header 'Authorization: Bearer <token>' \
--header 'X-Rollout-Credential-Id: <api-key>'import requests
url = "https://los.universal.rollout.com/api/loans/{id}"
headers = {
"Authorization": "Bearer <token>",
"X-Rollout-Credential-Id": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {Authorization: 'Bearer <token>', 'X-Rollout-Credential-Id': '<api-key>'}
};
fetch('https://los.universal.rollout.com/api/loans/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://los.universal.rollout.com/api/loans/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"X-Rollout-Credential-Id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://los.universal.rollout.com/api/loans/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("X-Rollout-Credential-Id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://los.universal.rollout.com/api/loans/{id}")
.header("Authorization", "Bearer <token>")
.header("X-Rollout-Credential-Id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://los.universal.rollout.com/api/loans/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
request["X-Rollout-Credential-Id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"loanNumber": "<string>",
"interestRate": 123,
"amount": 123,
"term": 123,
"loanToValue": 123,
"type": "<string>",
"purpose": "<string>",
"status": "<string>",
"statusDate": "<string>",
"applicationDate": "<string>",
"closingDate": "<string>",
"fundingDate": "<string>",
"rateAndTerms": {
"monthlyPayment": 123,
"escrowIncluded": true,
"pmiRequired": true,
"pmiRate": 123
},
"originalIds": {},
"original": {},
"created": "<string>",
"updated": "<string>",
"userParticipantIds": [
"<string>"
],
"borrowerParticipantIds": [
"<string>"
],
"stage": "<string>",
"stageHistory": [
{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"scheduledStartDate": "2023-11-07T05:31:56Z",
"actualStartDate": "2023-11-07T05:31:56Z",
"completedDate": "2023-11-07T05:31:56Z",
"plannedDurationDays": 123,
"actualDurationDays": 123,
"assignee": {
"id": "<string>",
"name": "<string>",
"email": "<string>",
"phone": "<string>",
"role": "<string>"
},
"requiresReview": true,
"isReviewed": true,
"order": 123,
"isRequired": true,
"notes": "<string>",
"metadata": null
}
],
"loanFolder": "<string>",
"archived": true,
"mortgageType": "<string>",
"lienType": "<string>",
"amortizationType": "<string>",
"armInitialPeriodMonths": 123,
"armSubsequentPeriodMonths": 123,
"expectedRentalIncome": 123,
"expectedNetRentalIncome": 123,
"communityProperty": true,
"transactionDetail": "<string>",
"refinanceType": "<string>",
"refinanceProgram": "<string>",
"energyImprovement": "<string>",
"projectType": "<string>",
"proposedMonthlyPayment": {
"firstMortgagePI": 123,
"subordinatePI": 123,
"homeownersInsurance": 123,
"supplementalInsurance": 123,
"propertyTaxes": 123,
"mortgageInsurance": 123,
"associationDues": 123,
"other": 123,
"total": 123
},
"loanFeatures": {
"balloon": true,
"interestOnly": true,
"negativeAmortization": true,
"prepaymentPenalty": true,
"temporaryBuydown": true,
"other": "<string>"
},
"qualifyingFunds": {
"dueFromBorrower": 123,
"totalMortgageLoans": 123,
"totalCredits": 123,
"cashFromToBorrower": 123
},
"titleInfo": {
"heldInNames": "<string>",
"currentlyHeldInNames": "<string>",
"estateType": "<string>",
"leaseholdExpiration": "<string>",
"mannerOfTitle": "<string>",
"trustInfo": "<string>",
"tribalLand": true
},
"loanOriginator": {
"organizationName": "<string>",
"organizationNmlsId": "<string>",
"organizationStateLicense": "<string>",
"individualName": "<string>",
"individualNmlsId": "<string>",
"individualStateLicense": "<string>",
"email": "<string>",
"phone": "<string>"
},
"otherNewMortgageLoans": [
{
"creditor": "<string>",
"lienType": "<string>",
"monthlyPayment": 123,
"loanAmount": 123,
"creditLimit": 123
}
],
"giftsOrGrants": [
{
"assetType": "<string>",
"source": "<string>",
"deposited": true,
"value": 123
}
],
"rolloutUpdated": "<string>"
}{
"errorMessage": "<string>"
}{
"errorMessage": "<string>"
}{
"errorMessage": "Data for this credential is not ready yet. Please try again."
}Authorizations
Consumer JWT minted by the tenant's backend
The Rollout Credential ID to use for queries/mutations
Path Parameters
Query Parameters
Comma-separated top-level fields to return; the parameter can also be repeated, once per field. id is always returned. Omit it, or pass allFields, to get every field, including original. Unknown names return 400.
Response
Response for status 200
Rollout's stable universal id for this loan. Use this to reference the loan in the Rollout API.
The human-facing loan number assigned by the source system, or null if it doesn't assign one. This is distinct from the source's internal record id (see originalIds) and from any source-specific GUID (available on original). Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
The source system's own identifiers for this loan, keyed by original entity name (e.g. { loan: "17102475" } is the source's internal loan record id). This is NOT the human loan number (see loanNumber). Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.
Show child attributes
Show child attributes
Present unless the request's fields leaves it out.