curl --request GET \
--url https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates \
--header 'x-rapidapi-key: <api-key>'import requests
url = "https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates"
headers = {"x-rapidapi-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-rapidapi-key': '<api-key>'}};
fetch('https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates', 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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rapidapi-key: <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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rapidapi-key", "<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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates")
.header("x-rapidapi-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rapidapi-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"cost": 1,
"data": {
"query": {
"creditScoreBucket": "VeryHigh",
"loanAmountBucket": "Conforming",
"loanToValueBucket": "Normal",
"loanType": "Conventional",
"program": "Fixed10Year"
},
"samples": [
{
"apr": 5.437,
"rate": 5.42,
"time": "2025-10-24T00:00:00-07:00",
"volume": 0
}
]
}
}{
"message": "Bad request"
}{
"message": "Invalid API key. Go to https://docs.rapidapi.com/docs/keys for more info."
}{
"message": "You are not subscribed to this API."
}{
"success": false,
"message": "Request failed with status 500: Internal Server Error",
"status_code": 500,
"cost": 0,
"explain": "Oops, it looks like there was an issue processing your request. Don't worry, you won't be charged for this request"
}Get Mortgage Rates
Get Mortgage Rates
curl --request GET \
--url https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates \
--header 'x-rapidapi-key: <api-key>'import requests
url = "https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates"
headers = {"x-rapidapi-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-rapidapi-key': '<api-key>'}};
fetch('https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates', 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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rapidapi-key: <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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rapidapi-key", "<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://us-property-data.p.rapidapi.com/api/v1/mortgage/rates")
.header("x-rapidapi-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://us-property-data.p.rapidapi.com/api/v1/mortgage/rates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rapidapi-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"success": true,
"cost": 1,
"data": {
"query": {
"creditScoreBucket": "VeryHigh",
"loanAmountBucket": "Conforming",
"loanToValueBucket": "Normal",
"loanType": "Conventional",
"program": "Fixed10Year"
},
"samples": [
{
"apr": 5.437,
"rate": 5.42,
"time": "2025-10-24T00:00:00-07:00",
"volume": 0
}
]
}
}{
"message": "Bad request"
}{
"message": "Invalid API key. Go to https://docs.rapidapi.com/docs/keys for more info."
}{
"message": "You are not subscribed to this API."
}{
"success": false,
"message": "Request failed with status 500: Internal Server Error",
"status_code": 500,
"cost": 0,
"explain": "Oops, it looks like there was an issue processing your request. Don't worry, you won't be charged for this request"
}Authorizations
Rapid API Key
Query Parameters
Type of loan program. ARM3/ARM5/ARM7 are adjustable-rate mortgages with initial fixed periods of 3, 5, or 7 years. Fixed10Year, Fixed15Year, Fixed20Year, and Fixed30Year are fixed-rate mortgages with the specified loan term.
ARM3, ARM5, ARM7, Fixed10Year, Fixed15Year, Fixed20Year, Fixed30Year "Fixed10Year"
Purpose of the loan. Use Purchase for buying a new property, or Refinance for replacing an existing mortgage with a new one.
Purchase, Refinance "Purchase"
Borrower credit rating category used to estimate mortgage rates. VeryHigh represents excellent credit, High represents good credit, and Low represents fair or poor credit.
VeryHigh, High, Low "VeryHigh"
Down payment percentage category. VeryHigh indicates a large down payment, High indicates a medium down payment, and Normal indicates a standard or minimum down payment.
VeryHigh, High, Normal "Normal"
Property location used to determine regional mortgage rates (e.g., city, state, or ZIP code).
Time range (in days) for which mortgage rate data is requested. For example, 1 = today, 7 = last 7 days, 30 = last 30 days, 90 = last 90 days.
1, 7, 30, 90, 365, 720 "90"