The LoanInfo API allows you to get a consolidated view of a mortgage loan.
After you processed your document with our API, you can both inspect the extracted data for each document
or you can get LoanInfo for the entire upload session.
Triangulation of LoanInfo
We automatically triangulate the LoanInfo from each document in the session, so you don't need to call an API to get the LoanInfo.
importrequestsBASE_URL='https://dev-api.v2.areal.ai/api/v2'# 0. Login - details in Authentication section# See code_samples/auth/python/login.py for authentication# 1. Get Loan Infos for a sessionsession_id='your-session-id'loan_infos_response=client.get(f'{BASE_URL}/resources/loan_infos/',params={'session_id':session_id,'pageIndex':0,'pageSize':20,'sort':'updated_at.asc','sort_order':'asc','sort_by':'name','search':'string',# Optional: search term},headers={'Accept':'application/json',}).json()# Process the responsemeta=loan_infos_response.get('meta',{})print(f"Total Count: {meta.get('totalCount')}")print(f"Page Index: {meta.get('pageIndex')}")print(f"Page Size: {meta.get('pageSize')}")# Process the loan infosforloan_infoinloan_infos_response.get('objects',[]):print(f"ID: {loan_info.get('id')}, ARLA Name: {loan_info.get('arla_name')}, Value: {loan_info.get('value')}")
usingSystem;usingSystem.Net.Http;usingSystem.Threading.Tasks;usingSystem.Text.Json;usingSystem.Collections.Generic;usingSystem.Linq;varbaseUrl="https://dev-api.v2.areal.ai/api/v2";// 0. Login - details in Authentication section// See code_samples/auth/c#/login.cs for authenticationvarhandler=newHttpClientHandler{UseCookies=true,CookieContainer=newCookieContainer()};varclient=newHttpClient(handler);// Assume client is already authenticated with cookies from login// 1. Get Loan Infos for a sessionvarsessionId="your-session-id";varqueryParams=newList<KeyValuePair<string,string>>{new("session_id",sessionId),new("pageIndex","0"),new("pageSize","20"),new("sort","updated_at.asc"),new("sort_order","asc"),new("sort_by","name"),new("search","string")// Optional: search term};varqueryString=string.Join("&",queryParams.Select(p=>$"{Uri.EscapeDataString(p.Key)}={Uri.EscapeDataString(p.Value)}"));varrequestUrl=$"{baseUrl}/resources/loan_infos/?{queryString}";varrequest=newHttpRequestMessage(HttpMethod.Get,requestUrl);request.Headers.Add("Accept","application/json");varresponse=awaitclient.SendAsync(request);response.EnsureSuccessStatusCode();varresponseContent=awaitresponse.Content.ReadAsStringAsync();varloanInfosData=JsonSerializer.Deserialize<JsonElement>(responseContent);// Process the responseif(loanInfosData.TryGetProperty("meta",outvarmeta)){if(meta.TryGetProperty("totalCount",outvartotalCount))Console.WriteLine($"Total Count: {totalCount.GetInt32()}");if(meta.TryGetProperty("pageIndex",outvarpageIndex))Console.WriteLine($"Page Index: {pageIndex.GetInt32()}");if(meta.TryGetProperty("pageSize",outvarpageSize))Console.WriteLine($"Page Size: {pageSize.GetInt32()}");}// Process the loan infosif(loanInfosData.TryGetProperty("objects",outvarobjects)){foreach(varloanInfoinobjects.EnumerateArray()){varid=loanInfo.TryGetProperty("id",outvaridProp)?idProp.GetString():"";vararlaName=loanInfo.TryGetProperty("arla_name",outvararlaNameProp)?arlaNameProp.GetString():"";varvalue=loanInfo.TryGetProperty("value",outvarvalueProp)?valueProp.GetString():"";Console.WriteLine($"ID: {id}, ARLA Name: {arlaName}, Value: {value}");}}
importjava.net.HttpURLConnection;importjava.net.URL;importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.net.CookieManager;importjava.net.CookieHandler;importjava.nio.charset.StandardCharsets;importorg.json.JSONObject;importorg.json.JSONArray;publicclassGetLoanInfos{publicstaticvoidmain(String[]args)throwsException{StringbaseUrl="https://dev-api.v2.areal.ai/api/v2";// 0. Login - details in Authentication section// See code_samples/auth/java/login.java for authenticationCookieManagercookieManager=newCookieManager();CookieHandler.setDefault(cookieManager);// Assume client is already authenticated with cookies from login// 1. Get Loan Infos for a sessionStringsessionId="your-session-id";StringqueryParams=String.format("session_id=%s&pageIndex=%d&pageSize=%d&sort=%s&sort_order=%s&sort_by=%s&search=%s",java.net.URLEncoder.encode(sessionId,StandardCharsets.UTF_8),0,20,java.net.URLEncoder.encode("updated_at.asc",StandardCharsets.UTF_8),java.net.URLEncoder.encode("asc",StandardCharsets.UTF_8),java.net.URLEncoder.encode("name",StandardCharsets.UTF_8),java.net.URLEncoder.encode("string",StandardCharsets.UTF_8)// Optional: search term);StringrequestUrl=baseUrl+"/resources/loan_infos/?"+queryParams;URLurl=newURL(requestUrl);HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();connection.setRequestMethod("GET");connection.setRequestProperty("Accept","application/json");// Cookies are automatically handled by CookieManagerintresponseCode=connection.getResponseCode();if(responseCode==HttpURLConnection.HTTP_OK){try(BufferedReaderbr=newBufferedReader(newInputStreamReader(connection.getInputStream(),StandardCharsets.UTF_8))){StringBuilderresponse=newStringBuilder();StringresponseLine;while((responseLine=br.readLine())!=null){response.append(responseLine.trim());}JSONObjectloanInfosResponse=newJSONObject(response.toString());// Process the responseif(loanInfosResponse.has("meta")){JSONObjectmeta=loanInfosResponse.getJSONObject("meta");if(meta.has("totalCount")){System.out.println("Total Count: "+meta.getInt("totalCount"));}if(meta.has("pageIndex")){System.out.println("Page Index: "+meta.getInt("pageIndex"));}if(meta.has("pageSize")){System.out.println("Page Size: "+meta.getInt("pageSize"));}}// Process the loan infosif(loanInfosResponse.has("objects")){JSONArrayobjects=loanInfosResponse.getJSONArray("objects");for(inti=0;i<objects.length();i++){JSONObjectloanInfo=objects.getJSONObject(i);Stringid=loanInfo.has("id")?loanInfo.getString("id"):"";StringarlaName=loanInfo.has("arla_name")?loanInfo.getString("arla_name"):"";Stringvalue=loanInfo.has("value")?loanInfo.getString("value"):"";System.out.println("ID: "+id+", ARLA Name: "+arlaName+", Value: "+value);}}}}connection.disconnect();}}