All fields below are sent as a JSON object in the POST body. Fields marked Required must be present on every request; optional fields refine the pricing results when provided.
Core Fields
| Field | Type | Required | Notes |
|---|---|---|---|
| loid | integer | Required | Your assigned loid configuration ID. Value example: 1234 |
| loan_purpose | string | Required | "purchase" or "refinance" |
| loan_type | string | Required | "Conventional", "FHA", "VA", "USDA", "ARM", or "nonqm" |
| list_price | number | Required | Appraised or estimated home value in USD |
| loan_amount | number | Required | Requested loan amount in USD |
| credit_score | integer | Required | Borrower FICO score (300–850) |
| zipcode | string | Required | 5-digit property ZIP code as a string. E.g., "33130" |
| property_type | string | Required | "single_family_home", "condo", "multi_family_2", "multi_family_3", "multi_family_4" |
| residency_type | string | Required | "primary_home", "secondary", or "investment" |
Optional / Refinement Fields
| Field | Type | Default | Notes |
|---|---|---|---|
| lock_period | integer | 30 | Rate lock in days: 15, 30, 45, or 60 |
| loan_term | integer or string | 360 | Loan term in months (360) or years as string ("30") |
| first_time_homebuyer | boolean | false | Set true to trigger affordability programs (HomeReady, Home Possible) |
| down_payment | number | derived | Down payment amount in USD. Improves pricing accuracy |
| cash_out | number | 0 | Cash-out amount for refinances. 0 = rate/term refi |
| waive_escrows | boolean | false | true to return rates without escrow impound |
| monthly_income | number | — | Borrower gross monthly income. Used for DTI and AMI eligibility |
| veteran | boolean | false | Required true for VA loan eligibility |
| nonqm_program | string | — | Required for Non-QM loans. E.g., "dscr" |
| va_funding_fee_type | string | — | "first_time" or "subsequent" for VA loans |
| arm_term | string | — | Initial fixed period for ARM loans: "3", "5", "7", or "10" (years). Required when loan_type is "ARM" |
| aus | string | NotSpecified | "DU", "LPA", or "NotSpecified" |
| state | string | derived | 2-letter state code. Derived from zipcode if omitted |
| city | string | — | City name for the property location |
| loid | integer | — | Loan Officer ID assigned by BankingBridge |
| id | integer | — | Rateflow configuration ID |
| min_credit | integer | — | Minimum credit score filter for returned products |
| coords | object | — | Geographic coordinates: { "lat": 0, "lng": 0 } |
| withCredentials | boolean | false | CORS credentials flag for browser-based requests |
| productCharacteristics.desiredPrice | number | 100 | The price used by LoanSifter to determine the best execution investor. Changing this value shifts which investor is selected and therefore which rate stack is returned. See the Overview article for full details. |
Calculating LTV: LTV is derived automatically: LTV = loan_amount ÷ list_price. The API computes and returns this in the loan_details response object.
Comments
0 comments
Please sign in to leave a comment.