Introduction
Main API Endpoint:
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client")
.get()
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client');
$request->setMethod(HTTP_METH_GET);
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client"
req, _ := http.NewRequest("GET", url, payload)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Welcome to the Mashvisor API Documentation!
The Mashvisor API provides developers with real estate data, enabling seamless integration into custom applications. Access granular and summary-level insights, in-depth property characteristics and performance analysis, and real-time market metrics for cities, zip codes, and neighborhoods across the United States. Additionally, we offer Airbnb rental data for select US and international markets to support global investment decisions.
Key Features:
- RESTful API with predictable, resource-oriented URLs
- Supports JSON responses and standard HTTP authentication & verbs
- Provides real estate metrics updated nightly
- Includes test-mode sample requests for easy implementation
The sample requests in the right sidebar are ready to use in test mode. Our data is updated on daily basis.
NOTE: MLS data shared via APIs is only available for inactive listings due to MLS regulations.
If you have any questions, contact us at [email protected].
Global Data Support
We are expanding our API to provide real estate and Airbnb rental data beyond the United States. Our global coverage now includes key markets such as Great Britain, Spain, UAE, and more, enabling users to access valuable insights across multiple countries.
Supported Countries
Our APIs are now equipped to provide data from several prominent countries, with plans to continually expand our coverage. As of this update, we are proud to support data access from the following countries:
- Great Britain: GB
- Canada: CA
- Spain: ES
- Australia: AU
- United Arab Emirates: AE
- France: FR
- South Africa: ZA
- Saudi Arabia: SA
- Greece: GR
We are actively working on extending our global data coverage to include additional countries. Stay tuned for updates on new supported regions.
How to Use
In the Short Term Rentals APIs, you have the ability to configure the 'country' parameter. By default, it is set to 'US,' but specifying this parameter is optional. Please note that if you choose to specify the 'country' parameter, it should be in ISO-3166 Alpha-2 code format. For example, 'GB' for Great Britain and 'ES' for Spain.
Authentication
To authorize, use the below code, and make sure to replace
YOUR_API_KEYwith your API key:
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/octet-stream");
RequestBody body = RequestBody.create(mediaType, null);
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client"
req, _ := http.NewRequest("GET", url, payload)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Mashvisor uses API keys to allow access. To request your API key, follow these steps:
To request your API key, register for a new developer user account, and you will be able to start a 2-weeks trial when you’re ready.
The API key is required to be included in all API requests.
Mashvisor allows you to authenticate your account when using the API by including your secret x-api-key header in the request, performed via the authentication scheme (token authentication) which is an HTTP authentication scheme.
All API requests require the JWT authentication must be made over HTTPS. Calls made over non-secure HTTP will fail.
Core Resources
Below is a detailed list of resources accessible through the Mashvisor API. These resources provide access to property data, market insights, rental performance metrics, investment analysis, and Airbnb rental data across various locations.
Search
List Cities
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/list?state=FL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/list?state=FL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/city/list');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'FL'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/list?state=FL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"count": 726,
"list": [
"Alachua",
"Alford",
"ALLIGATOR POINT",
"Altamonte Springs",
"ALTHA",
"ALTOONA",
"ALTURAS",
"Alva",
"ANNA MARIA",
"Anthony"
]
}
}
This endpoint retrieves the cities with the highest occupancy rates in a specific state.
HTTP Request
GET http://api.mashvisor.com/v1.1/client/city/list
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. If ignored, it will fetch all available cities. | |
| page | Integer | 1 | The page to return the content for. Valid values:1, ... etc. |
| items | Integer | 10 | The items to return the content for. Valid values: 10, ... etc. |
List Neighborhoods
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/neighborhoods/CA/Los%20Angeles")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/neighborhoods/CA/Los%20Angeles")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/city/neighborhoods/CA/Los%20Angeles');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/neighborhoods/CA/Los%20Angeles"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"count": 96,
"results": [
{
"id": 7877,
"city": "Los Angeles",
"latitude": 33.952138,
"longitude": -118.404407,
"name": "Westchester",
"state": "CA",
"county": "Los Angeles",
"is_village": 0
},
{
"id": 13017,
"city": "Los Angeles",
"latitude": 34.238792,
"longitude": -118.477272,
"name": "North Hills",
"state": "CA",
"county": "Los Angeles",
"is_village": 0
},
{
"id": 13176,
"city": "Los Angeles",
"latitude": 34.228894,
"longitude": -118.444025,
"name": "Panorama City",
"state": "CA",
"county": "Los Angeles",
"is_village": 0
},
{
"id": 13327,
"city": "Los Angeles",
"latitude": 33.974969,
"longitude": -118.420888,
"name": "Playa Vista",
"state": "CA",
"county": "Los Angeles",
"is_village": 0
},
...
]
},
"message": "City neighborhoods list fetched successfully"
}
This endpoint retrieves all available neighborhoods/areas per city.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/city/neighborhoods/{state}/{city}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| city* | String | City Name, Ex: Los Angeles |
List Top Markets
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/top-markets?state=GA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/top-markets?state=GA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/trends/neighborhoods');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'GA'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/top-markets?state=GA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"city": "Atlanta",
"state": "GA",
"smart_location": "Atlanta, GA",
"homes_for_sale": 5688
},
{
"city": "Athens",
"state": "GA",
"smart_location": "Athens, GA",
"homes_for_sale": 1132
},
{
"city": "Macon",
"state": "GA",
"smart_location": "Macon, GA",
"homes_for_sale": 1017
},
{
"city": "Savannah",
"state": "GA",
"smart_location": "Savannah, GA",
"homes_for_sale": 907
},
{
"city": "Marietta",
"state": "GA",
"smart_location": "Marietta, GA",
"homes_for_sale": 780
}
],
"message": "Top markets list fetched successfully"
}
This endpoint retrieves top cities/metro areas in a specific state with a count of active homes for sale.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/city/top-markets
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| items | Integer | 5 | The items to return the content for. Valid values: 10, ... etc. |
Get City Invesmtent Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/investment/CA/Los%20Angeles")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/investment/CA/Los%20Angeles")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/city/investment/CA/Los%20Angeles');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/investment/CA/Los%20Angeles"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"median_price": 1050000,
"sqft": 2670.89,
"investment_properties": 4842,
"airbnb_properties": 6597,
"traditional_properties": 5849,
"occupancy": 16,
"traditional_coc": 2,
"airbnb_coc": -1,
"airbnb_cap_rate": 100.286,
"traditional_cap_rate": 62.722,
"traditional_rental": 4056,
"airbnb_rental": 1148,
"airbnb_rental_rates": {
"zeroBedRoomHomeValue": 1303.85,
"oneBedRoomHomeValue": 1172.09,
"twoBedRoomsHomeValue": 1298.39,
"threeBedRoomsHomeValue": 1504.27,
"fourBedRoomsHomeValue": 1751.08
},
"traditional_rental_rates": {
"zeroBedRoomHomeValue": 2058.77,
"oneBedRoomHomeValue": 2360.25,
"twoBedRoomsHomeValue": 3383,
"threeBedRoomsHomeValue": 5061.53,
"fourBedRoomsHomeValue": 6284.56
}
},
"message": "City Overview fetched successfully"
}
This endpoint retrieves the details of median property performance metrics per city.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/city/investment/{state}/{city}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| city | String | City Name, Ex: Los Angeles |
Get City Top Properties
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/properties/CA/Los%20Angeles")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/properties/CA/Los%20Angeles")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/city/properties/CA/Los%20Angeles');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/properties/CA/Los%20Angeles"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"properties": [
{
"id": 3751027,
"neighborhood": "University Hills",
"neighborhood_id": 403190,
"address": "986 Gifford Avenue",
"zip_code": "90063",
"zip": "90063",
"city": "Los Angeles",
"county": "Los Angeles",
"state": "CA",
"type": "Multi Family",
"image_url": "https://ssl.cdn-redfin.com/photo/45/bigphoto/990/AR25054990_1_0.jpg",
"list_price": 495000,
"baths": 2,
"beds": 5,
"sqft": 1218,
"mls_id": "AR25054990",
"days_on_market": 30,
"next_open_house_date": null,
"next_open_house_start_time": null,
"next_open_house_end_time": null,
"last_sale_date": "2012-10-31 00:00:00",
"last_sale_price": 167000,
"listing_id": "AR25054990",
"has_pool": null,
"is_water_front": null,
"num_of_units": 2,
"latitude": 34.0474,
"longitude": -118.176,
"traditional_ROI": 4.1716,
"airbnb_ROI": 9.3168,
"traditional_rental": 2924,
"airbnb_rental": 6538,
"traditional_cap": 4.21374,
"airbnb_cap": 9.41091,
"neighborhood_zipcode": "90032",
"list_price_formatted": "$495,000",
"price_per_sqft": 406,
"country": "United States",
"COC": {
"airbnb": 9.3168,
"traditional": 4.1716
},
"rental_income": {
"airbnb": 6538,
"traditional": 2924
},
"cap_rate": {
"airbnb": 9.41091,
"traditional": 4.21374
},
"image": "https://ssl.cdn-redfin.com/photo/45/bigphoto/990/AR25054990_1_0.jpg"
},
{
"id": 5850389,
"neighborhood": "Mount Washington",
"neighborhood_id": 116774,
"address": "520 Rustic Dr",
"zip_code": "90065",
"zip": "90065",
"city": "Los Angeles",
"county": "Los Angeles",
"state": "CA",
"type": "Other",
"image_url": "https://ssl.cdn-redfin.com/photo/45/bigphoto/697/WS26001697_0.jpg",
"list_price": 124000,
"baths": null,
"beds": null,
"sqft": null,
"mls_id": "WS26001697",
"days_on_market": 13,
"next_open_house_date": null,
"next_open_house_start_time": null,
"next_open_house_end_time": null,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "WS26001697",
"has_pool": null,
"is_water_front": null,
"num_of_units": null,
"latitude": 34.1052,
"longitude": -118.209,
"traditional_ROI": 11.7318,
"airbnb_ROI": 8.82481,
"traditional_rental": 1705,
"airbnb_rental": 1856,
"traditional_cap": 12.2048,
"airbnb_cap": 9.18064,
"neighborhood_zipcode": "90065",
"list_price_formatted": "$124,000",
"price_per_sqft": null,
"country": "United States",
"COC": {
"airbnb": 8.82481,
"traditional": 11.7318
},
"rental_income": {
"airbnb": 1856,
"traditional": 1705
},
"cap_rate": {
"airbnb": 9.18064,
"traditional": 12.2048
},
"image": "https://ssl.cdn-redfin.com/photo/45/bigphoto/697/WS26001697_0.jpg"
},
...
]
},
"message": "City Properties fetched successfully"
}
This endpoint retrieves detailed data on a specific city's top X investment properties performance.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/city/properties/{state}/{city}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| city | String | City Name, Ex: Los Angeles |
Marketplace Listings Search
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/city/listings?state=CA&city=San%20Francisco&page=1&page_limit=50")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/city/listings?state=CA&city=San%20Francisco&page=1&page_limit=50")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/city/listings');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San Francisco',
'page' => 1,
'page_limit' => 50
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/city/listings?state=CA&city=San%20Francisco&page=1&page_limit=50"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"total_results": 3674,
"properties": [
{
"id": 6112406,
"address": "2026 Great Hwy",
"zip_code": "94116",
"city": "San Francisco",
"county": "San Francisco",
"state": "CA",
"neighborhood": "Outer Parkside",
"neighborhood_id": 417517,
"type": "Single Family Residential",
"baths": 4,
"beds": 3,
"mls_id": null,
"status": "active",
"list_price": 5900000,
"last_sale_price": null,
"original_list_price": null,
"image_url": "https://photos.zillowstatic.com/fp/6fbe698cc8307a072a61a9e7a1bca133-p_e.jpg",
"is_foreclosure": 0,
"sqft": 0,
"lot_size": null,
"latitude": 37.7486,
"longitude": -122.508,
"neighborhood_zipcode": "94116"
},
{
"id": 6112431,
"address": "555 Fulton St SUITE 209",
"zip_code": "94102",
"city": "San Francisco",
"county": "San Francisco",
"state": "CA",
"neighborhood": "Hayes Valley",
"neighborhood_id": 268206,
"type": "Single Family Residential",
"baths": 1,
"beds": 1,
"mls_id": null,
"status": "active",
"list_price": 321536,
"last_sale_price": null,
"original_list_price": null,
"image_url": "https://photos.zillowstatic.com/fp/3528d2f9269f650daabc8c6e5988b6a2-p_e.jpg",
"is_foreclosure": 0,
"sqft": 491,
"lot_size": null,
"latitude": 37.7782,
"longitude": -122.426,
"neighborhood_zipcode": "94117"
},
...
],
"page": 1,
"total_pages": 3674
},
"message": "Properties fetched successfully"
}
This endpoint powers your real estate marketplace experience, fetching property listings across any U.S. city. It’s perfect for building investment platforms, search interfaces, and location-based listing pages. Use optional filters like beds, baths, price, and property type to match your users with the most relevant listings.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/city/listings
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | Two-letter state code (e.g. CA) | |
| city* | String | City name. Required if zip_code is not provided | |
| beds | Integer | Minimum number of bedrooms | |
| baths | Integer | Minimum number of bathrooms | |
| min_price | Integer | Minimum listing price | |
| max_price | Integer | Maximum listing price | |
| min_sqft | Integer | Minimum square footage | |
| property_type | String | Property type (e.g. 'Single Family Residential', 'Apartment', etc.) | |
| foreclosure | Boolean | false | Whether to include foreclosed properties |
| page | Integer | 1 | Page number |
| page_limit | Integer | 100 | Results per page |
Get Top Neighborhoods
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/trends/neighborhoods?city=Miami+Beach&state=FL&items=3")
.get()
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/trends/neighborhoods?city=Miami+Beach&state=FL&items=3")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/trends/neighborhoods');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'FL',
'city' => 'Miami Beach',
'items' => '3'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/trends/neighborhoods?city=Miami+Beach&state=FL&items=3"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"total_results": 3,
"current_page": 1,
"state": "FL",
"city": "Miami Beach",
"neighborhoods": [
{
"id": 407493,
"name": "North Shore",
"city": "Miami Beach",
"state": "FL",
"occupancy": 27,
"total_listing": 1,
"airbnb_listings": 84,
"description": null,
"single_home_value": 578434,
"single_home_value_formatted": "$578,434",
"investment_rentals": {
"airbnb_rental": {
"roi": -2.54341,
"cap_rate": 3.3072744686515665,
"rental_income": 1594.2
},
"traditional_rental": {
"roi": 1.69629,
"cap_rate": 12.090575588571904,
"rental_income": 5828
}
},
"mashMeter": 31
},
{
"id": 124846,
"name": "Isle of Normandy",
"city": "Miami Beach",
"state": "FL",
"occupancy": 29,
"total_listing": 1,
"airbnb_listings": 36,
"description": null,
"single_home_value": 887657,
"single_home_value_formatted": "$887,657",
"investment_rentals": {
"airbnb_rental": {
"roi": -1.34213,
"cap_rate": 1.6769991111431557,
"rental_income": 1240.5
},
"traditional_rental": {
"roi": 2.29234,
"cap_rate": 5.72545476462192,
"rental_income": 4235.2
}
},
"mashMeter": 31
},
{
"id": 623416,
"name": "Flamingo Lummus",
"city": "Miami Beach",
"state": "FL",
"occupancy": 19,
"total_listing": 1,
"airbnb_listings": 322,
"description": null,
"single_home_value": 395000,
"single_home_value_formatted": "$395,000",
"investment_rentals": {
"airbnb_rental": {
"roi": -2.05932,
"cap_rate": 2.635139240506329,
"rental_income": 867.4
},
"traditional_rental": {
"roi": 2.58527,
"cap_rate": 15.824810126582278,
"rental_income": 5209
}
},
"mashMeter": 26
}
]
},
"message": "City Overview fetched successfully"
}
This endpoint retrieves top X neighborhoods with the highest occupancy rate in a specific city and state.
HTTP Request
GET http://api.mashvisor.com/v1.1/client/trends/neighborhoods
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| city | String* | city name, ex: Las Vegas. | |
| page | Integer | 1 | The page to return the content for. Valid values:1, ... etc. |
| items | Integer | 5 | The items to return the content for. Valid values: 10, ... etc. |
Get Neighborhood Overview
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/268201/bar?state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/268201/bar?state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/268201/bar');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'CA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/268201/bar?state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"id": "268201",
"name": "Haight Ashbury",
"city": "San Francisco",
"county": "San Francisco",
"state": "CA",
"is_village": 0,
"description": "Years ago, the Haight-Ashbury of San Francisco scene had a long-gone '60s and ‘70s hippie culture. However, over time the Haight has changed. But save for a few hippie memorabilia, today the Haight has a whole new vibe. Although there are some fragments of flower-power, incense-burning, acid-dropping, peace-and-love-vibing era that can be purchased at smoke shops along the neighborhood, today the neighborhood is different. With exclusive boutiques, high-end vintage-clothing shops, second-hand stores, Internet cafés and hip restaurants having all settled in, this reinvented area stands out as one of San Francisco's commercial centers. \r\n\r\nWhat makes the Haight unique is its just-rolled-out-of-bed vibe during the day, which provides a perfect opportunity for lazing around in cafés and bookstores. Weekends can get quite crowded with shoppers and brunch seekers during the day and club-goers at night. Neo-punks, club kids, fashionistas, tourists and neighborhood locals also fit in here, whether they have come to get a new piercing, grab a burrito or just enjoy some fun people-watching from a café. But there are two distinct areas of the Haight: The Upper Haight, which stretches from Stanyan to Masonic, which is known as the shopping zone, though it deteriorates a bit where it stretches toward Golden Gate Park. While, the Lower Haight, roughly Divisidero to Webster is a more diverse neighborhood with a stony feel. While it has been an alternate nightlife hub for years, the Lower Haight has become a main attraction for DJs and ravers with an attraction to dance-music and clubs.",
"image": "https://9ac82074a42d61a93c2a-4910baab8d3df1a59178432e0b86512c.ssl.cf5.rackcdn.com",
"latitude": 37.768094,
"longitude": -122.448285,
"walkscore": 96,
"transitscore": 78,
"bikescore": 74,
"num_of_properties": 49,
"num_of_airbnb_properties": 272,
"num_of_traditional_properties": 4,
"median_price": 1247000,
"price_per_sqft": 1040.67,
"mashMeter": 16,
"mashMeterStars": 1.5,
"avg_occupancy": 27.3934,
"average_sold_price": 1523390,
"average_days_on_market": 8,
"number_of_sold_properties_last_month": 0,
"number_of_sold_properties_last_year": 48,
"sale_price_trends_last_1_year": 1535000,
"sale_price_trends_last_3_years": 969305,
"sale_price_trends_last_5_years": 990405,
"strategy": "traditional",
"airbnb_rental": {
"roi": -0.14890646189451218,
"cap_rate": 2.555316760224539,
"rental_income": 2655.4,
"rental_income_change": "down",
"rental_income_change_percentage": -33.089288224910305,
"night_price": 88.51333333333334,
"occupancy": 27.3934,
"occupancy_change": "down",
"occupancy_change_percentage": -35.173591348890156,
"price_change": "up",
"price_change_percentage": 6.117163944433129,
"insights": {
"bedrooms": {
"slope": -0.056435358228246406,
"RSquare": 0.1590580989337962
},
"price": {
"slope": -0.0001509847334722372,
"RSquare": 0.14903142461633823
},
"stars_rate": {
"slope": -1,
"RSquare": -1
},
"bathrooms": {
"slope": -0.09112747723620784,
"RSquare": 0.12463502522414383
},
"beds": {
"slope": -0.03654657942054976,
"RSquare": 0.10927351943713126
},
"reviews_count": {
"slope": 0.00040215289866135775,
"RSquare": 0.15020938649904492
}
}
},
"traditional_rental": {
"roi": 0.3293299227952957,
"cap_rate": 4.431242983159583,
"rental_income": 4604.8,
"rental_income_change": "up",
"rental_income_change_percentage": 3.2744236117340986,
"night_price": 153.49333333333334,
"occupancy": 96.2,
"occupancy_change": null
}
},
"message": "Neighborhood bar fetched successfully"
}
This endpoint retrieves a neighborhood/area overview and investment analysis. Neighborhoods are defined by MLS publishers and could represent communities or in some cases entire cities.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/bar
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Integer | Neighborhood id |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | Neighborhood's state |
Get Neighborhood Schools
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/123706/schools?state=FL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/123706/schools?state=FL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/123706/schools');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'FL'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/123706/schools?state=FL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"state": "FL",
"city": "Boca Raton",
"county": "Palm Beach County",
"neighborhood_id": 123706,
"zipcode": "33433",
"street": "7700 West Camino Real",
"latitude": 26.342785,
"longitude": -80.154884,
"district_name": null,
"name": "Salt Academy",
"school_summary": "Salt Academy, a private school located in Boca Raton, FL, serves grades K-11 in the .",
"type": "private",
"level_codes": "e,m,h",
"level": "KG,1,2,3,4,5,6,7,8,9,10,11",
"phone": "(561) 235-5775",
"fax": null,
"website": null,
"overview_url": "https://www.greatschools.org/florida/boca-raton/19570-Salt-Academy/",
"rating": 1,
"rating_band": "null",
"rating_description": null
},
{
"state": "FL",
"city": "Boca Raton",
"county": "Palm Beach County",
"neighborhood_id": 123706,
"zipcode": "33433",
"street": "7000 West Palmetto Park Road",
"latitude": 26.349413,
"longitude": -80.155022,
"district_name": null,
"name": "Palmetto Park High School",
"school_summary": "Palmetto Park High School, a public school located in Boca Raton, FL, serves grades 7-12 in the .",
"type": "public",
"level_codes": "m,h",
"level": "7,8,9,10,11,12",
"phone": "(561) 835-5498",
"fax": null,
"website": "https://palmettoparkhighschool.com/",
"overview_url": "https://www.greatschools.org/florida/boca-raton/20348-Palmetto-Park-High-School/",
"rating": 1,
"rating_band": "null",
"rating_description": null
},
...
]
}
Retrieve the list of schools that serve a specific neighborhood. The response includes each school’s details such as name, location, type, grade levels, and performance rating.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/schools
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Integer | Neighborhood id |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | Neighborhood's state |
Property Info
The Property Object
The Property Object:
{
"status": "success",
"content": {
"stateInterest": {
"state": "TX",
"thirtyYearFixed": 5.625,
"thirtyYearFixedCount": 0,
"fifteenYearFixed": 5.25,
"fifteenYearFixedCount": 0,
"fiveOneARM": 6.25,
"fiveOneARMCount": 7.388
},
"id": 6428624,
"isShortSale": null,
"source": "Greater El Paso Association of Realtors",
"yearBuilt": 2026,
"sqft": 2057,
"lastSaleDate": null,
"lastSalePrice": null,
"state": "TX",
"county": "EL PASO",
"longitude": -106.23655700683594,
"zip": "79928",
"image": {
"image": "http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"url": "http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"width": 100,
"height": 100,
"street_view": null,
"default_image": "https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/images/img%20placeholder.png"
},
"extra_images": [
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2631219278r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1719454136r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f405715506r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3678983359r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3532764518r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4002716041r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f134454445r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1782906862r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2105404989r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f661290211r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3953984361r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4054153363r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4013608390r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3758350809r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2781014893r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f351183588r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1176465977r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3157473609r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2171274825r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3962860033r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1261650466r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1104306382r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3223043411r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1633892627r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f751016499r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4227523926r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f492604558r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f347366549r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1668050666r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2725547124r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f527609181r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4004040427r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1711306532r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3061665752r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f325996082r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3034075272r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f157876479r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1239011978r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f100284050r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1902238329r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f808692874r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1274077205r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f39298402r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1675622158r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2140396833r.jpg"
],
"photos": null,
"videos": [],
"virtual_tours": [],
"tax": null,
"mls_id": "937135",
"ROI": {
"traditional_ROI": 1.79049,
"traditional_rental": 1835,
"airbnb_rental": 397,
"airbnb_cap_rate": -2.69171,
"airbnb_ROI": -2.65896,
"traditional_cap_rate": 1.81254,
"roi_updated_at": "2026-01-25T08:09:11.000Z"
},
"daysOnMarket": 1,
"meta": {
"metaKey": null,
"value": null
},
"neighborhood": {
"country": "United States",
"image": null,
"city": "El Paso",
"singleHomeValue": 315950,
"mashMeter": 29,
"latitude": 31.681043,
"description": null,
"singleHomeValue_formatted": "$315,950",
"is_village": false,
"mashMeter_formatted": 29,
"name": "Little Bit of Country",
"id": 274329,
"state": "TX",
"longitude": -106.304629,
"walkscore": 8,
"airbnb_properties_count": 50,
"traditional_properties_count": 13
},
"homeType": "Single Family Residential",
"property_type": "Residential",
"property_sub_type": "Single Family Residence",
"beds": 4,
"num_of_units": null,
"favorite": null,
"status": "Active",
"city": "El Paso",
"saleType": "MLS Listing",
"latitude": 31.66595077514648,
"description": "Experience the elegance of the Pebble Beach Farmhouse- a premier design located in Gateway Estates. This stunning 4-bedroom, 3-bathroom residence combines superior design along with the best in residential construction. Energy Star Certified: enjoy the benefits of spray foam insulation on all exterior walls and 14 SEER HVAC system. Sophisticated Details: finished plywood cabinets with decorative lighting, quartz countertops and stylish window shutters. Spacious Interiors: impressive 10 and 12 foot ceilings throughout the home. This home offers remarkable value and a unique opportunity for all buyers. Contact us today to schedule your appointment and explore the luxury of El Paso's premier new construction home builder!",
"nextOpenHouseDate": null,
"recentReductionDate": null,
"title": "SINGLE_FAMILY - Other - El Paso, TX",
"rent_appreciation_rate": null,
"originalListPrice": null,
"parkingSpots": 0,
"parkingType": null,
"address": "1823 Schyler Love Lane",
"nextOpenHouseStartTime": null,
"nextOpenHouseEndTime": null,
"lotSize": 5663,
"url": null,
"baths": 3,
"full_baths": 3,
"address_revealing": true,
"location": "Little Bit of Country",
"interested": null,
"listPrice": 405950,
"price_per_sqft": 197.35051045211472,
"is_foreclosure": 0,
"foreclosure_status": null,
"occupancy_status": null,
"owner_occupied": false,
"listing_date": "2026-01-24T00:00:00.000Z",
"heating_system": "Forced Air",
"cooling_system": "Ceiling Fan(s)",
"mls_name": "Greater El Paso Association of Realtors",
"walkscore": null,
"transitscore": 29,
"bikescore": 31,
"investment_likelihood_label": 0,
"investment_likelihood_score": 4.65,
"investment_likelihood_stars": null,
"hoa_dues": null,
"view_type": null,
"parcel_number": "100100111100000101",
"architecture_style": "Other",
"foundation_type": null,
"roof_type": "Flat, Rolled Hot Mop, Tile",
"num_of_stories": 1,
"is_new_construction": 0,
"construction_materials": "Wood Siding, Stucco, Energy Star Certified",
"has_pool": "false",
"is_water_front": "false",
"needs_repair": 0,
"tenant_occupied": 0,
"is_market_place": 0,
"disclaimer": "Copyright © 2026 Greater El Paso Association of Realtors. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"schools": [
{
"category": "Elementary",
"name": "Lujanchav",
"district": "Socorro"
},
{
"category": "MiddleOrJunior",
"name": "Walter Clarke",
"district": "Socorro"
},
{
"category": "High",
"name": "Americas",
"district": "Socorro"
}
],
"modification_timestamp": "2026-01-24T21:23:57.000Z",
"created_at": "2026-01-25T08:04:10.000Z",
"updated_ar": "2026-01-25T08:05:09.000Z",
"updated_at": "2026-01-25T08:05:09.000Z",
"owner_first_name": null,
"owner_last_name": null,
"new_listing_flag": false,
"rental_estimate": null,
"characteristics": "Dishwasher, Free-Standing Gas Oven, Microwave, Refrigerator, Tankless Water Heater",
"directions": null,
"valuation_batch": {
"valuation_estimate": null,
"quantile_25": null,
"quantile_75": null
},
"agents": [
{
"id": 824580,
"office_id": 9759
}
]
}
}
Our comprehensive database contains information of over 6 million active and inactive listings sourced from 600+ of the 820 MLS providers across the US, with active listings added daily.
Please note that our API provides access to this aggregated data, not direct access to the MLS systems themselves.
Property Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| id | Mashvisor Property ID | Integer |
| title | A short title for the property | String |
| description | Longer description of the property | String |
| home_type | The property sub type as provided by the MLS provider | String Possible values: 1. Single Family Residential 2.Townhouse 3.Condo/Coop 4.Multi Family 5. Other |
| property_main_type | The property main type as provided by the MLS provider | String Possible values: * Residential * Commercial * Common Interest * Farm And Agriculture * Lots And Land * MultiFamily * Other * Rental * Residential |
| property_category | The main property listing category | String Possible values: * Purchase * Lease * Rent |
| address | The full street address of the property, ex: 36981 Newark Blvd #B |
String |
| city | The city where the property is located | String |
| state* | The state where the property is located | String |
| county | County where a property is located | String |
| zip | Postal code where a property is located | Integer |
| location | The neighborhood where the property is located | String |
| beds | Property full bedrooms count | Integer |
| baths | Property full bathrooms count | Integer |
| num_of_units | Number of units in the property, only exists with multifamily properties | Integer |
| sqft | Property living area in square feet unit | Integer |
| lot_size | The lot size of the property in square feet unit | Integer |
| parcel_number | The property APN assigned by tax assessor | String |
| listing_id | The MLS ID of the property | String |
| year_built | The year was constructed in | Integer |
| walkscore | The walkscore value of the property address | Integer |
| tax | The last knows tax amount | Integer |
| tax_history | Collection of all the taxes reported for a property | JSON Array |
| list_price | The listed price for the property | Integer |
| price_per_sqft | Price per sqft value | Float |
| days_on_market | Number of days since the property was on market for sale | Integer |
| parking_spots | Number of parking spots | Integer |
| parking_type | An indicator for the parking type | Integer |
| last_sale_date | The last sale date of the property | Date |
| last_sale_price | The last sale price of the property | Integer |
| is_foreclosure | An indicator if the property is foreclosure or not | Boolean Possible values: 0, 1 |
| foreclosure_status | The foreclosure status as described by the MLS provider | String Possible values * Foreclosure - Other * Lis Pendens (Pre-Foreclosure) * Notice of Default (Pre-Foreclosure) * Notice of Foreclosure Sale (Auction) * Notice of Trustee Sale (Auction) * Other * REO - Bank Owned |
| next_open_house_date | The date of the open house occuring | Date |
| next_open_house_start_time | The time of the open house starting | Time |
| next_open_house_end_time | The time of the open house ending | Time |
| url | The URL of the property | String |
| source | The name of the entity authorized the property to be syndicated | String |
| provider_url | The URL of the entity authorized the property to be syndicated | String |
| franchise | The franchise of the property | String |
| latitude | Latitude of the property | Float |
| longitude | Longitude of the property | Float |
| directions | The directions for the property | String |
| heating_system | The heating system type | String |
| cooling_system | The cooling system type | String |
| neighborhood_id | The property neighborhood ID | Integer |
| schools | Collection of all the schools nearby a property | JSON Array |
| view_type | The property view type | String Possible values: * Airport * Average * Bluff * Bridge * Canyon * City * Desert * Forest * Golf Course * Harbor * Hills * Lake * Marina * Mountain * None * Ocean * Other * Panorama * Park * Ravine * River * Territorial * Unknown * Valley * Vista * Water |
| image_url | The property main image URL | String |
| extra_images | List of the images associated with a property | String |
| videos | Videos associated with a property | String |
| virtual_tours | Virtual tour link for a property | String |
| updated_at | Date it’s updated in the database | Date |
| buyer_name | The property buyer’s name | String |
| seller_name | The property seller’s name | String |
| owner_ame | The property owner’s name | String |
| owner_address | The owner full street address | String |
| owner_city | The owner city | String |
| owner_state | The owner city | String |
| owner_zip_code | The owner city | String |
| owner_phone_number | The owner phone number | String |
| owner_image | The owner headshot | String |
| owner_email | The owner email | String |
| occupancy_status | Property occupancy status | String Possible values: * Assumed Owner Occupancy * Owner Occupied or Primary Residence * Second Home |
| agent_id | The property’s agent ID associated to it | Integer |
| Expense | Collection of all the expenses reported for a property | JSON Array Possible values: * AC Maintenance Fee * Accounting Fee * Additional Pet Fee * Amenity Fee * Annual Operating Expenses * Application Fee * Beach Fee * Boat Fee * Broadband Fee * Building Insurance * Building Maintenance Fee * Bus Service Fee * Cable Fee * Capital Improvements Fee * Carpet Cleaning Fee * Cleaning Deposit * Cleaning Fee * Closing Cost * Club Fee * Club Membership Fee * Co-Op Fee * Cold Water Fee * Common Area Maintenance Fee * Community Development District Fee * Community/Master Home Owner Fee * Condo Management Fee * Condo/Co-Op Fee * Contingency Fund Fee * Cook Fee * Day Care Fee * Dock Fee * Doorman Fee * Dredging Fee * Electric Fee * ElevatorUseFee * EquestrianFee * ExterminatorFee * FacilitiesFee * FireDepartmentDues * FireInsuranceFee * FirewoodFee * FirstMonthsRent * FirstTwoMonthsRent * FitnessCenterFee * FrontFootFee * GardenerFee * GasFee * GreenFee * GroundMaintenanceFee * GroundRent * GutterCleaningFee * HealthFee * HomeOwnerAssessmentsFee * HomeOwnerTransferFee * HorseCareFee * InitiationFee * KeyDeposit * LandAssessmentFee * LandFee * LastMonthsRent * LawnMaintenanceFee * LegalFee * LifeguardFee * LightBulbs Filters Fuses AlarmCareFee * LightFee * MaidServiceFee * MaintenanceonPool * ManagementFee * MarinaFee * Mello-RoosCommunityFacilitiesDistrictFee * MHParkFees * MoveinFee * MoveoutFee * OilFee * OnsiteParkingFee * OriginationFee * Other * OwnerPays * ParkFee * ParkingFee * PetAddendumFee * PetApplicationFee * PetDeposit * PhoneFee * Pier/DockMaintenanceFee * PlannedAreaDevelopmentFee * POAFee * Pool/SpaFee * ProcessingFee * RanchFee * Re-KeyFee * RecaptureFee * RecreationFee * RecyclingFee * RegimeFee * RepairDeductible * ReservationFee * ResortFee * RoofMaintenanceFee * RoofRepairFee * RoofReplacementFee * RVFee * RVParkingFee * SecurityDeposit * SecurityLightFee * SecurityMonitoringFee * SecurityServiceFee * SecurityStaffFee * SecuritySystemFee * SepticInspectionFee * SewerFee * SewerTapFee * SnowRemovalFee * SocialFee * SpecialAssessmentFee * StormWaterFee * StreetLightingFee * StreetMaintenanceFee * StreetParkingFee * StructuralMaintenanceFee * TenantPays * TennisFee * TrashFee * TripleNetFee * UtilitiesFee * WalkingTrailFee * WaterFee * WaterHeaterFee * WaterIrrigationFee * WaterPipeFee * WaterRightsFee * WaterTapFee * WaterTreatmentFee * WaterUseFee * Water/SewerHookupFee * WaterfrontFee * WindowCleaningFee * YardCareFee |
| builder_name | The builder name of a property | String |
| builder_email | The builder email of a property | String |
| builder_number | The builder phone number of a property | String |
| builder_address | The builder full address of a property | String |
| disclaimer | String serves as a negation or limitation of the rights under a warranty given by a seller to a buyer | String |
| appliances | A description of the appliance as provided | JSON Array Possible values: * BarbequeorGrill * CoffeeSystem * CoffeeSystem-Roughin * Cooktop * Cooktop-Electric * Cooktop-Electric2burner * Cooktop-Electric6burner * Cooktop-Gas * Cooktop-Gas2burner * Cooktop-Gas5burner * Cooktop-Gas6burner * Cooktop-GasCustom * Cooktop-Induction * Cooktop-Induction2burner * Cooktop-Induction6burner * Dishwasher * Dishwasher-Drawer * Dishwasher-Twoormore * Dryer * Dryer-Dualfuel * Dryer-Electric110V * Dryer-Electric220V * Dryer-Gas * Dryer-Gasroughin * Freezer * Freezer-Compact * Freezer-Upright * GarbageDisposer * IceMaker * Microwave * None * Other * Oven * Oven-Convection * Oven-Double * Oven-DoubleElectric * Oven-DoubleGas * Oven-Gas * Oven-Gas3wide * Oven-Self-Cleaning * Oven-Steam * Oven-Twin * Oven-TwinElectric * Oven-TwinGas * Oven-TwinGas3wide * Oven-TwinMixed * Range * Range-BuiltIn * Range-Dual * Range-Dual10burner * Range-Dual6burner * Range-Dual8burner * Range-Electric * Range-Gas * Range-Gas10burner * Range-Gas6burner * Range-Gas8burner * Range-Induction * Range-Other * Rangetop-Electric * Rangetop-Electric2burner * Rangetop-Electric6burner * Rangetop-Gas * Rangetop-Gas10burner * Rangetop-Gas2burner * Rangetop-Gas4burnercompact * Rangetop-Gas6burner * Rangetop-Gas8burner * Rangetop-GasCustom * Rangetop-Induction * Rangetop-Induction2burner * Rangetop-Induction6burner * Refrigerator * Refrigerator-Bar * Refrigerator-Built-in * Refrigerator-Built-inWithPlumbing * Refrigerator-Drawer * Refrigerator-SidebySide * Refrigerator-Undercounter * Refrigerator-WineStorage * Refrigerator-WithPlumbing * TrashCompactor * VacuumSystem * VacuumSystem-Roughin * VentHood * VentHood10burner * VentHood6burner * VentHood8burner * WarmingDrawer * Washer * Washer-Frontload * Washer-Steamer * Washer-Topload * Washer/DryerCombo * Washer/DryerStack * Water-Filter * Water-InstantHot * Water-Purifier * Water-Softener |
| detailed_characteristics | Detailed characteristics | JSON Array |
| room_count | Total rooms count | Integer |
| year_updated | Indicates the year the property received updates | Integer |
| half_baths | Indicates the half bathrooms value for a property | Integer |
Get Property
Sample Request
OkHttpClient client = new OkHttpClient();
// Lookup by address
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property?address%3D1823%20Schyler%20Love%20Lane%26state%3DTX%26city%3DEl%20Paso%26zip_code%3D79928")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
// Lookup by ID
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property?id=6428624&state=TX")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
# Lookup by address
url = URI("https://api.mashvisor.com/v1.1/client/property?address=1823 Schyler Love Lane&state=TX&city=El Paso&zip_code=79928")
# Lookup by ID
url = URI("https://api.mashvisor.com/v1.1/client/property?id=6428624&state=TX")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
// Lookup by address
$request->setQueryData(array(
'state' => 'TX',
'city' => 'El Paso',
'address' => '1823 Schyler Love Lane',
));
// Lookup by ID
$request->setQueryData(array(
'state' => 'TX',
'id' => 6428624
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
// Lookup by address
url := "https://api.mashvisor.com/v1.1/client/property?address%3D1823%20Schyler%20Love%20Lane%26state%3DTX%26city%3DEl%20Paso%26zip_code%3D79928"
// Lookup by ID
url := "https://api.mashvisor.com/v1.1/client/property?id=6428624&state=TX"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"stateInterest": {
"state": "TX",
"thirtyYearFixed": 5.625,
"thirtyYearFixedCount": 0,
"fifteenYearFixed": 5.25,
"fifteenYearFixedCount": 0,
"fiveOneARM": 6.25,
"fiveOneARMCount": 7.388
},
"id": 6428624,
"isShortSale": null,
"source": "Greater El Paso Association of Realtors",
"yearBuilt": 2026,
"sqft": 2057,
"lastSaleDate": null,
"lastSalePrice": null,
"state": "TX",
"county": "EL PASO",
"longitude": -106.23655700683594,
"zip": "79928",
"image": {
"image": "http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"url": "http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"width": 100,
"height": 100,
"street_view": null,
"default_image": "https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/images/img%20placeholder.png"
},
"extra_images": [
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1106365754r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2631219278r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1719454136r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f405715506r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3678983359r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3532764518r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4002716041r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f134454445r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1782906862r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2105404989r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f661290211r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3953984361r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4054153363r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4013608390r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3758350809r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2781014893r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f351183588r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1176465977r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3157473609r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2171274825r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3962860033r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1261650466r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1104306382r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3223043411r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1633892627r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f751016499r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4227523926r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f492604558r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f347366549r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1668050666r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2725547124r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f527609181r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f4004040427r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1711306532r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3061665752r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f325996082r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f3034075272r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f157876479r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1239011978r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f100284050r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1902238329r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f808692874r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1274077205r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f39298402r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f1675622158r.jpg",
"http://lh.rdcpix.com/db53d5d5aaeec44eca0c283bd47fc85el-f2140396833r.jpg"
],
"photos": null,
"videos": [],
"virtual_tours": [],
"tax": null,
"mls_id": "937135",
"ROI": {
"traditional_ROI": 1.79049,
"traditional_rental": 1835,
"airbnb_rental": 397,
"airbnb_cap_rate": -2.69171,
"airbnb_ROI": -2.65896,
"traditional_cap_rate": 1.81254,
"roi_updated_at": "2026-01-25T08:09:11.000Z"
},
"daysOnMarket": 1,
"meta": {
"metaKey": null,
"value": null
},
"neighborhood": {
"country": "United States",
"image": null,
"city": "El Paso",
"singleHomeValue": 315950,
"mashMeter": 29,
"latitude": 31.681043,
"description": null,
"singleHomeValue_formatted": "$315,950",
"is_village": false,
"mashMeter_formatted": 29,
"name": "Little Bit of Country",
"id": 274329,
"state": "TX",
"longitude": -106.304629,
"walkscore": 8,
"airbnb_properties_count": 50,
"traditional_properties_count": 13
},
"homeType": "Single Family Residential",
"property_type": "Residential",
"property_sub_type": "Single Family Residence",
"beds": 4,
"num_of_units": null,
"favorite": null,
"status": "Active",
"city": "El Paso",
"saleType": "MLS Listing",
"latitude": 31.66595077514648,
"description": "Experience the elegance of the Pebble Beach Farmhouse- a premier design located in Gateway Estates. This stunning 4-bedroom, 3-bathroom residence combines superior design along with the best in residential construction. Energy Star Certified: enjoy the benefits of spray foam insulation on all exterior walls and 14 SEER HVAC system. Sophisticated Details: finished plywood cabinets with decorative lighting, quartz countertops and stylish window shutters. Spacious Interiors: impressive 10 and 12 foot ceilings throughout the home. This home offers remarkable value and a unique opportunity for all buyers. Contact us today to schedule your appointment and explore the luxury of El Paso's premier new construction home builder!",
"nextOpenHouseDate": null,
"recentReductionDate": null,
"title": "SINGLE_FAMILY - Other - El Paso, TX",
"rent_appreciation_rate": null,
"originalListPrice": null,
"parkingSpots": 0,
"parkingType": null,
"address": "1823 Schyler Love Lane",
"nextOpenHouseStartTime": null,
"nextOpenHouseEndTime": null,
"lotSize": 5663,
"url": null,
"baths": 3,
"full_baths": 3,
"address_revealing": true,
"location": "Little Bit of Country",
"interested": null,
"listPrice": 405950,
"price_per_sqft": 197.35051045211472,
"is_foreclosure": 0,
"foreclosure_status": null,
"occupancy_status": null,
"owner_occupied": false,
"listing_date": "2026-01-24T00:00:00.000Z",
"heating_system": "Forced Air",
"cooling_system": "Ceiling Fan(s)",
"mls_name": "Greater El Paso Association of Realtors",
"walkscore": null,
"transitscore": 29,
"bikescore": 31,
"investment_likelihood_label": 0,
"investment_likelihood_score": 4.65,
"investment_likelihood_stars": null,
"hoa_dues": null,
"view_type": null,
"parcel_number": "100100111100000101",
"architecture_style": "Other",
"foundation_type": null,
"roof_type": "Flat, Rolled Hot Mop, Tile",
"num_of_stories": 1,
"is_new_construction": 0,
"construction_materials": "Wood Siding, Stucco, Energy Star Certified",
"has_pool": "false",
"is_water_front": "false",
"needs_repair": 0,
"tenant_occupied": 0,
"is_market_place": 0,
"disclaimer": "Copyright © 2026 Greater El Paso Association of Realtors. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"schools": [
{
"category": "Elementary",
"name": "Lujanchav",
"district": "Socorro"
},
{
"category": "MiddleOrJunior",
"name": "Walter Clarke",
"district": "Socorro"
},
{
"category": "High",
"name": "Americas",
"district": "Socorro"
}
],
"modification_timestamp": "2026-01-24T21:23:57.000Z",
"created_at": "2026-01-25T08:04:10.000Z",
"updated_ar": "2026-01-25T08:05:09.000Z",
"updated_at": "2026-01-25T08:05:09.000Z",
"owner_first_name": null,
"owner_last_name": null,
"new_listing_flag": false,
"rental_estimate": null,
"characteristics": "Dishwasher, Free-Standing Gas Oven, Microwave, Refrigerator, Tankless Water Heater",
"directions": null,
"valuation_batch": {
"valuation_estimate": null,
"quantile_25": null,
"quantile_75": null
},
"agents": [
{
"id": 824580,
"office_id": 9759
}
]
}
}
Fetches comprehensive property data by address, ID, or parcel—covering beds, baths, square footage, location, ownership details, pricing history, and neighborhood insights—ideal for real estate analysis and investment decisions.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. | |
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| parcel_number | String | Property parcel or APN | |
| mls_id | String | Property MLS id | |
| address | String | Property street address | |
| city | String | Property city | |
| zip_code | String | Property zip code |
Get Property Images
Sample Reques
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/5505272/images?state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/5505272/images?state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/5505272/images');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'CA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/5505272/images?state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"primary_image": "http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3778549048r.jpg",
"images": [
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3778549048r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f448371398r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3843110868r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1097536266r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f4109247850r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1286673453r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f865805879r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3455626474r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3632665175r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f612310235r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f66017883r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1612143432r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1719107266r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f121972175r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f2437094978r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1480537869r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1529319798r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3632140505r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3250614837r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f4082004100r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1150411795r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f2987973694r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f144622232r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3307925546r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f2496764297r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f2033418723r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f2980627967r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f4014329536r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f3475196641r.jpg",
"http://lh.rdcpix.com/f5745e7590e56c2b19e972c5fbadc168l-f1751217792r.jpg"
]
}
}
This endpoint retrieves the property's main and secondary images.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/images
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 400. |
Get Taxes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/127242/taxing?state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/127242/taxing?state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/127242/taxing');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'CA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/127242/taxing?state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"tax_history": [
{
"year": "2000",
"property_tax": null,
"assessment": 84572
},
{
"year": "2002",
"property_tax": null,
"assessment": 87987
},
{
"year": "2003",
"property_tax": null,
"assessment": 89746
},
{
"year": "2004",
"property_tax": null,
"assessment": 91420
},
{
"year": "2005",
"property_tax": null,
"assessment": 95111
},
{
"year": "2006",
"property_tax": null,
"assessment": 95111
},
{
"year": "2007",
"property_tax": null,
"assessment": 97012
},
{
"year": "2008",
"property_tax": null,
"assessment": 98951
},
{
"year": "2009",
"property_tax": null,
"assessment": 100929
},
{
"year": "2010",
"property_tax": null,
"assessment": 100689
},
{
"year": "2011",
"property_tax": null,
"assessment": 101446
},
{
"year": "2012",
"property_tax": null,
"assessment": 103474
},
{
"year": "2014",
"property_tax": 1480.84,
"assessment": 106022
},
{
"year": "2015",
"property_tax": 1486.04,
"assessment": 108140
},
{
"year": "2016",
"property_tax": 1531.75,
"assessment": 109788
},
{
"year": "2017",
"property_tax": 4103.38,
"assessment": 111983
},
{
"year": "2018",
"property_tax": 4103.38,
"assessment": 326400
},
{
"year": "2019",
"property_tax": 10559.48,
"assessment": 826200
},
{
"year": "2020",
"property_tax": 10559.48,
"assessment": 842724
},
{
"year": "2021",
"property_tax": 10457.51,
"assessment": 851453
},
{
"year": "2022",
"property_tax": 10601.72,
"assessment": 868482
},
{
"year": "2023",
"property_tax": 11112.6,
"assessment": 885850
},
{
"year": "2024",
"property_tax": 11327.75,
"assessment": 903566
},
{
"year": "2025",
"property_tax": 11533.75,
"assessment": 921636
}
]
}
}
This endpoint retrieves the property's historical tax rates.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/taxing
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 404. |
Get Property Transactions
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/618021/transactions?state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/618021/transactions?state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/618021/transactions');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'CA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/618021/transactions?state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"transactions": [
{
"event_type": "purchase",
"sale_price": 572000,
"loan_amount": null,
"transaction_date": "2024-04-08T22:00:00.000Z"
},
{
"event_type": "Pending sale",
"sale_price": 575000,
"loan_amount": null,
"transaction_date": "2024-03-11T22:00:00.000Z"
},
{
"event_type": "Contingent",
"sale_price": 575000,
"loan_amount": null,
"transaction_date": "2024-02-26T22:00:00.000Z"
},
{
"event_type": "Price change",
"sale_price": 575000,
"loan_amount": null,
"transaction_date": "2024-01-13T22:00:00.000Z"
},
{
"event_type": "Listed for sale",
"sale_price": 650000,
"loan_amount": null,
"transaction_date": "2024-01-03T22:00:00.000Z"
},
{
"event_type": "Contingent",
"sale_price": 650000,
"loan_amount": null,
"transaction_date": "2023-12-28T22:00:00.000Z"
},
{
"event_type": "Listed for sale",
"sale_price": 650000,
"loan_amount": null,
"transaction_date": "2023-12-15T22:00:00.000Z"
},
{
"event_type": "Contingent",
"sale_price": 650000,
"loan_amount": null,
"transaction_date": "2023-11-16T22:00:00.000Z"
},
{
"event_type": "Listed for sale",
"sale_price": 650000,
"loan_amount": null,
"transaction_date": "2023-11-05T22:00:00.000Z"
},
{
"event_type": "purchase",
"sale_price": 400000,
"loan_amount": null,
"transaction_date": "2023-01-30T22:00:00.000Z"
},
{
"event_type": "Pending sale",
"sale_price": 450000,
"loan_amount": null,
"transaction_date": "2023-01-23T22:00:00.000Z"
},
{
"event_type": "Contingent",
"sale_price": 450000,
"loan_amount": null,
"transaction_date": "2023-01-11T22:00:00.000Z"
},
{
"event_type": "Listed for sale",
"sale_price": 450000,
"loan_amount": null,
"transaction_date": "2022-12-31T22:00:00.000Z"
},
{
"event_type": "Listing removed",
"sale_price": 475000,
"loan_amount": null,
"transaction_date": "2018-01-07T22:00:00.000Z"
},
{
"event_type": "Price change",
"sale_price": 475000,
"loan_amount": null,
"transaction_date": "2017-11-17T22:00:00.000Z"
},
{
"event_type": "Price change",
"sale_price": 315000,
"loan_amount": null,
"transaction_date": "2017-11-12T22:00:00.000Z"
},
{
"event_type": "Listed for sale",
"sale_price": 520000,
"loan_amount": null,
"transaction_date": "2017-07-05T22:00:00.000Z"
}
]
}
}
This endpoint Fetch the complete sales transaction history for a given property, including sale prices, loan amounts, and transaction dates.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/transactions
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 400. |
Get Price Estimates
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/estimates/664367?state=GA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.addHeader("User-Agent", "PostmanRuntime/7.15.2")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/estimates/664367?state=GA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/estimates/664367');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'GA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/estimates/664367?state=GA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"zestimate": 219900,
"zrental_estimate": 1900,
"redfin_estimate": 238700,
"mashvisor_estimate": 259900
}
}
This endpoint retrieves list and rental price estimation of given property.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/estimates/{pid}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| pid | String* | The property Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 404. |
Get Nearby Properties
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/nearby?state=FL&city=Miami&address=253 NE 2nd St&page=1")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/nearby?state=FL&city=Miami&address=253 NE 2nd St&page=1")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/nearby');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'FL',
'city' => 'Miami',
'address' => '253 NE 2nd St',
'page' => 1
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/nearby?state=FL&city=Miami&address=253 NE 2nd St&page=1"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"property": {
"id": 112834,
"address": "253 NE 2nd St #2003",
"city": "Miami",
"state": "FL",
"zip_code": "33132",
"neighborhood": "Downtown Miami",
"latitude": 25.77640342712402,
"longitude": -80.18910217285156
},
"nearby": [
{
"id": 66338,
"address": "350 S Miami Ave #3914",
"city": "Miami",
"state": "FL",
"zip": "33130",
"neighborhood": "Downtown Miami",
"latitude": 25.7705,
"longitude": -80.1942,
"beds": 2,
"baths": 2,
"sqft": 935,
"year_built": 2008,
"list_price": 524900,
"days_on_market": 74,
"url": "https://www.realtor.com/realestateandhomes-detail/350-S-Miami-Ave-Apt-3914_Miami_FL_33130_M62666-08432?f=listhub&s=MAORFL&m=A11909816&c=mashv",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/816/A11909816_1.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 74.5,
"investment_likelihood_label": 1
},
{
"id": 66396,
"address": "350 S Miami Ave #3602",
"city": "Miami",
"state": "FL",
"zip": "33130",
"neighborhood": "Downtown Miami",
"latitude": 25.7705,
"longitude": -80.1942,
"beds": 3,
"baths": 2,
"sqft": 1385,
"year_built": 2008,
"list_price": 735000,
"days_on_market": 202,
"url": "https://www.realtor.com/realestateandhomes-detail/350-S-Miami-Ave-Apt-3602_Miami_FL_33130_M65804-90019?f=listhub&s=MAORFL&m=A11639725&c=mashv",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/966/A11832966_4.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 87.97,
"investment_likelihood_label": 1
},
{
"id": 66450,
"address": "133 NE 2nd Ave #1208",
"city": "Miami",
"state": "FL",
"zip": "33132",
"neighborhood": "Downtown Miami",
"latitude": 25.7757,
"longitude": -80.1897,
"beds": 1,
"baths": 1,
"sqft": 903,
"year_built": 2007,
"list_price": 415000,
"days_on_market": 152,
"url": "https://listings.listhub.net/pages/MAORFL/A10620493/?channel=mashv",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/027/A11863027_7.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 100,
"investment_likelihood_label": 1
},
{
"id": 66468,
"address": "133 NE 2nd Ave #1512",
"city": "Miami",
"state": "FL",
"zip": "33132",
"neighborhood": "Downtown Miami",
"latitude": 25.7757,
"longitude": -80.1897,
"beds": 2,
"baths": 2,
"sqft": 1036,
"year_built": 2007,
"list_price": 470000,
"days_on_market": 34,
"url": "http://www.redfin.com/FL/Miami/133-NE-2nd-Ave-33132/unit-1512/home/43390150",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/124/A11925124_0.jpg",
"property_type": null,
"home_type": "Condo/Coop",
"investment_likelihood_score": 74.46,
"investment_likelihood_label": 1
},
{
"id": 66566,
"address": "350 S Miami Ave #2104",
"city": "Miami",
"state": "FL",
"zip": "33130",
"neighborhood": "Downtown Miami",
"latitude": 25.7705,
"longitude": -80.1942,
"beds": 2,
"baths": 2,
"sqft": 1075,
"year_built": 2008,
"list_price": 525000,
"days_on_market": 3,
"url": "http://www.redfin.com/FL/Miami/350-S-Miami-Ave-33130/unit-2104/home/43443132",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/480/A11947480_0.jpg",
"property_type": null,
"home_type": "Condo/Coop",
"investment_likelihood_score": 74.35,
"investment_likelihood_label": 1
},
{
"id": 66650,
"address": "300 S Biscayne Blvd #L-432",
"city": "Miami",
"state": "FL",
"zip": "33131",
"neighborhood": "Downtown Miami",
"latitude": 25.7714,
"longitude": -80.1875,
"beds": 1,
"baths": 1,
"sqft": 1034,
"year_built": 2008,
"list_price": 525000,
"days_on_market": 266,
"url": "https://www.realtor.com/realestateandhomes-detail/300-S-Biscayne-Blvd-Apt-432_Miami_FL_33131_M62704-84090?s=MAORFL&m=A11121759&c=mashv&f=listhub",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/641/A11792641_6.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 82.02,
"investment_likelihood_label": 1
},
{
"id": 66702,
"address": "335 S Biscayne Blvd #2200",
"city": "Miami",
"state": "FL",
"zip": "33131",
"neighborhood": "Downtown Miami",
"latitude": 25.7716,
"longitude": -80.1855,
"beds": 2,
"baths": 2,
"sqft": 1105,
"year_built": 2005,
"list_price": 700000,
"days_on_market": 87,
"url": "https://www.realtor.com/realestateandhomes-detail/335-S-Biscayne-Blvd-Apt-2200_Miami_FL_33131_M67016-67401?f=listhub&s=MAORFL&m=A11898945&c=mashv",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/706/A11902706_2.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 72.82,
"investment_likelihood_label": 1
},
{
"id": 66890,
"address": "50 Biscayne Blvd #4311",
"city": "Miami",
"state": "FL",
"zip": "33132",
"neighborhood": "Downtown Miami",
"latitude": 25.7748,
"longitude": -80.1882,
"beds": 2,
"baths": 2,
"sqft": 1256,
"year_built": 2007,
"list_price": 700000,
"days_on_market": 98,
"url": "https://www.realtor.com/realestateandhomes-detail/50-Biscayne-Blvd-Apt-4311_Miami_FL_33132_M64806-10477?f=listhub&s=MAORFL&m=A11890696&c=mashv",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/696/A11890696_1.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 73.97,
"investment_likelihood_label": 1
},
{
"id": 112834,
"address": "253 NE 2nd St #2003",
"city": "Miami",
"state": "FL",
"zip": "33132",
"neighborhood": "Downtown Miami",
"latitude": 25.7764,
"longitude": -80.1891,
"beds": 2,
"baths": 2,
"sqft": 1058,
"year_built": 2008,
"list_price": 749000,
"days_on_market": 88,
"url": "https://www.realtor.com/realestateandhomes-detail/253-NE-2nd-St-Apt-2003_Miami_FL_33132_M63202-34124?s=MAORFL&m=A11422372&c=mashv&f=listhub",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/117/A11899117_7.jpg",
"property_type": "Residential",
"home_type": "Condo/Coop",
"investment_likelihood_score": 93.29,
"investment_likelihood_label": 1
},
{
"id": 112838,
"address": "350 S Miami Ave #304",
"city": "Miami",
"state": "FL",
"zip": "33130",
"neighborhood": "Downtown Miami",
"latitude": 25.7705,
"longitude": -80.1942,
"beds": 2,
"baths": 2,
"sqft": 1148,
"year_built": 2008,
"list_price": 450000,
"days_on_market": 190,
"url": "http://www.redfin.com/FL/Miami/350-S-Miami-Ave-33130/unit-304/home/42676087",
"image_url": "https://ssl.cdn-redfin.com/photo/105/bigphoto/442/A11834442_2.jpg",
"property_type": null,
"home_type": "Condo/Coop",
"investment_likelihood_score": 74.42,
"investment_likelihood_label": 1
}
],
"pagination": {
"page": 1,
"page_size": 10,
"has_more": true
}
}
}
Retrieve a list of active for-sale properties located near a given address or property ID.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/nearby
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. | |
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| parcel_number | String | Property parcel or APN | |
| mls_id | String | Property MLS id | |
| address | String | Property street address | |
| city | String | Property city | |
| zip_code | String | Property zip code | |
| page | Number | 1 | Property zip code |
Get Property Schools
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/3435280/schools?state=FL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/3435280/schools?state=FL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/3435280/schools');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'FL'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/3435280/schools?state=FL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"schools": [
{
"state": "FL",
"city": "Boca Raton",
"county": "Palm Beach County",
"neighborhood_id": 123706,
"zipcode": "33432",
"street": "103 Southwest 1st Avenue",
"latitude": 26.348059,
"longitude": -80.089066,
"district_name": "Palm Beach",
"name": "Boca Raton Elementary School",
"school_summary": "Boca Raton Elementary School, a public school located in Boca Raton, FL, serves grades PK-5 in the Palm Beach.",
"type": "public",
"level_codes": "p,e",
"level": "PK,KG,1,2,3,4,5",
"phone": "(561) 544-1700",
"fax": "(561) 544-1750",
"website": "http://bres.palmbeachschools.org",
"overview_url": "https://www.greatschools.org/florida/boca-raton/2257-Boca-Raton-Elementary-School/",
"rating": 9,
"rating_band": "Above average",
"rating_description": null
},
{
"state": "FL",
"city": "Boca Raton",
"county": "Palm Beach County",
"neighborhood_id": 123706,
"zipcode": "33486",
"street": "1251 Northwest 8th Street",
"latitude": 26.3592,
"longitude": -80.113029,
"district_name": "Palm Beach",
"name": "Boca Raton Community Middle School",
"school_summary": "Boca Raton Community Middle School, a public school located in Boca Raton, FL, serves grades 6-8 in the Palm Beach.",
"type": "public",
"level_codes": "m",
"level": "6,7,8",
"phone": "(561) 416-8700",
"fax": "(561) 416-8777",
"website": "http://brms.palmbeachschools.org",
"overview_url": "https://www.greatschools.org/florida/boca-raton/2274-Boca-Raton-Community-Middle-School/",
"rating": 9,
"rating_band": "Above average",
"rating_description": null
},
{
"state": "FL",
"city": "Boca Raton",
"county": "Palm Beach County",
"neighborhood_id": 123706,
"zipcode": "33486",
"street": "1501 Northwest 15th Court",
"latitude": 26.364414,
"longitude": -80.116676,
"district_name": "Palm Beach",
"name": "Boca Raton Community High School",
"school_summary": "Boca Raton Community High School, a public school located in Boca Raton, FL, serves grades 9-12 in the Palm Beach.",
"type": "public",
"level_codes": "h",
"level": "9,10,11,12",
"phone": "(561) 338-1400",
"fax": "(561) 338-1440",
"website": "http://brhs.palmbeachschools.org",
"overview_url": "https://www.greatschools.org/florida/boca-raton/2258-Boca-Raton-Community-High-School/",
"rating": 6,
"rating_band": "Average",
"rating_description": null
}
]
}
}
Retrieve the list of schools associated with a given property. The response provides key details about each school, including its location, type, levels served, and quality rating.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/schools
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 400. |
Property Ownership
The Ownership Objects
The Contact Object:
{
"status": "success",
"content": {
"id": 9087,
"first_name": "Samantha",
"last_name": "Reed",
"email_address": "[email protected]",
"phone_number": "(415) 555-8234",
"line_type": "Mobile",
"address": "123 Market St",
"city": "San Francisco",
"state": "CA",
"zip_code": "94103",
"created_at": "2022-04-20T10:15:30.000Z",
"updated_at": "2024-10-05T18:42:11.000Z"
}
}
The Demographics Object:
{
"dob": "24081992",
"age_range": "25-29",
"ethnicity": "Hispanic",
"single_parent": "Yes",
"senior_adult_household": "Yes",
"young_adult_household": null,
"business_owner": "Accountant",
"language": "English",
"religion": "Christian",
"number_of_children": "3",
"presence_of_children": "Yes",
"education": null,
"occupation": null,
"gender": "Male",
"marital_status": "Married",
"owner_renter": "Owner",
"social_presence_indicator": "Yes"
}
The Lifestyle and Interests Object:
{
"magazines": "Yes",
"technology": "Yes",
"dieting_and_wellness": "Yes",
"exercise": "Yes",
"diy_home_improvement": "Yes",
"jewelry": null,
"mail_order_buyer": "Yes",
"membership_clubs": "Yes",
"online_education": "Yes",
"spectator_sports": "Yes",
"outdoor_sports": "Yes",
"investing": null,
"books": null,
"political_donor": "Yes",
"hobbies_and_crafts": "Yes",
"cosmetics": "Yes",
"travel": "Yes",
"charitable_donations": "Yes",
"arts_and_antiques": "Yes",
"pet_owner": "Yes",
"cooking": null,
"diy_auto_work": "Yes",
"health_and_beauty": "Yes",
"parenting": null,
"music": null,
"film_and_movies": "Yes",
"self_improvement": "Yes",
"womens_apparel": "Yes"
}
The Financials, Household incomes, wealth score, and autos Object:
{
"est_household_income": "$80,000 - 100,000",
"length_of_residence": "10 years",
"home_purchase_date": "201770",
"est_home_purchase_price": "$950,000-1,100,999",
"dwelling_type": "Single Family",
"auto_year": null,
"number_of_credit_lines": "2",
"auto_make": null,
"credit_card_holder": "Yes",
"auto_model": null,
"est_home_value": null,
"auto_edition": null,
"est_net_worth": "$500,000-749,999",
"gas_credit_card_holder": null,
"upscale_card_holder": "Yes",
"wealth_score": 98
}
Mashvisor database contains historical data on property owners' contact information, demographics, lifestyle, interests, financials, and estimated household income.
Owner Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| First Name | Owner First name | String |
| Last Name | Owner Last name | String |
| Phone Number | Phone number, including area code | Integer |
| Line Type | Landline or Mobile | String |
| Email Address | Owner email address | String |
| Address | Street address | String |
| City | City name | String |
| state* | state* abbreviation | String |
| Zip Code | Zip code | Integer |
| DOB | A month and year of person’s born | String |
| Age Range | Age range of the person | String |
| Ethnicity | Ethnicity of the person | String |
| Single Parent | Is single parent presence in household | String |
| Senior Adult Household | Yes or null | String |
| Young Adult Household | Yes or null | String |
| Business Owner | Business owner; Accountant, Builder, Director, .. | String |
| Language | Primary Language | String |
| Religion | Person’s religion | String |
| Number of Children | Children within the household | Integer |
| Presence of Children | Yes or null | String |
| Education | Highest level of education | String |
| Occupation | Industry of occupation | String |
| Gender | Male or Female | String |
| Marital Status | Single or Married | String |
| Own/Rent | Own or rent household | String |
| Social Presence Indicator | Whether the person has an account on social networks or not, Yes or null | String |
| Magazines | If there’s a match, the title will be listed | String |
| Technology | If there’s a match, the title will be listed | String |
| Dieting and Wellness | If there’s a match, the title will be listed | String |
| Exercise | If there’s a match, the title will be listed | String |
| DIY Home Improvement | If there’s a match, the title will be listed | String |
| Jewelry | If there’s a match, the title will be listed | String |
| Mail Order Buyer | If there’s a match, the title will be listed | String |
| Membership Clubs | If there’s a match, the title will be listed | String |
| Online Education | If there’s a match, the title will be listed | String |
| Spectator Sports | If there’s a match, the title will be listed | String |
| Outdoor Sports | If there’s a match, the title will be listed | String |
| Investing | If there’s a match, the title will be listed | String |
| Books | If there’s a match, the title will be listed | String |
| Political Donor | If there’s a match, the title will be listed | String |
| Hobbies and Crafts | If there’s a match, the title will be listed | String |
| Cosmetics | If there’s a match, the title will be listed | String |
| Travel | If there’s a match, the title will be listed | String |
| Charitable Donations | If there’s a match, the title will be listed | String |
| Arts and Antiques | If there’s a match, the title will be listed | String |
| Pet Owner | If there’s a match, the title will be listed | String |
| Cooking | If there’s a match, the title will be listed | String |
| DIY Auto work | If there’s a match, the title will be listed | String |
| Health and Beauty | If there’s a match, the title will be listed | String |
| Parenting | If there’s a match, the title will be listed | String |
| Music | If there’s a match, the title will be listed | String |
| Film and Movies | If there’s a match, the title will be listed | String |
| Self Improvement | If there’s a match, the title will be listed | String |
| Womens Apparel | Yes or null | String |
| Est. Household Income | Estimated household income | String |
| Length of Residence | Length of residence | String |
| Home Purchase Date | Estimated date of home purchase | Date |
| Est. Home Purchase Price | Estimated price of home purchase | String |
| Dwelling Type | Single family or multi-family | String |
| Auto year | Year of automobile | Integer |
| Number of credit lines | City Number of lines of credit | Integer |
| Auto make | Make of automobile | String |
| Credit card holder | Yes or null | String |
| Auto model | Model of automobile | String |
| Est. Home Value | Estimated home value | String |
| Auto edition | Edition of automobile | String |
| Est. Net Worth | Estimated net worth | String |
| Gas credit card holder | Yes or null | String |
| Upscale card holder | Yes or null | String |
| Wealth Score | Measure of wealth, 0 - 100 | Integer |
Get Contact Info
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/owner/contact?mls_id=FC314771&state=FL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/owner/contact?mls_id=FC314771&state=FL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/owner/contact');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'mls_id' => 'FC314771'
'state' => 'FL'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/owner/contact?mls_id=FC314771&state=FL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"id": 3640095,
"first_name": "John",
"last_name": "Smith",
"email_address": null,
"phone_number": "3488811111",
"line_type": "Mobile",
"address": "7 SEDGWICK TRL",
"city": "Palm Coast",
"state": "FL",
"zip_code": "32164",
"created_at": "2025-12-30T11:15:24.000Z",
"updated_at": "2026-01-20T10:54:11.000Z"
}
}
This endpoint retrieves contact details for a single property owner.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/owner/contact
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| parcel_number | String | Property parcel or APN | |
| mls_id | String | Property MLS id | |
| address | String | Property street address | |
| city | String | Property city | |
| state* | String | Property state | |
| zip_code | String | Property zip code |
Get Demographics
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/owner/demographics?state=FL&first_name=JUSTINA&last_name=NIN")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/owner/demographics?state=FL&first_name=JUSTINA&last_name=NIN")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/owner/demographics');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'FL',
'first_name' => 'JUSTINA',
'last_name' => 'NIN'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/owner/demographics?state=FL&first_name=JUSTINA&last_name=NIN"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"dob": "193709",
"age_range": "85-95",
"ethnicity": null,
"single_parent": null,
"senior_adult_household": "YES",
"young_adult_household": null,
"business_owner": null,
"language": "English",
"religion": "Buddhist",
"number_of_children": null,
"presence_of_children": null,
"education": null,
"occupation": "Other",
"gender": "Female",
"marital_status": "Married",
"owner_renter": null,
"social_presence_indicator": null
}
}
This endpoint retrieves the property owners’ demographics when matching on a full name, phone number, email address, or on a complete mailing address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/owner/demographics
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| first_name | String | First name | |
| last_name | String | Last name | |
| phone_number | String | Person phone number | |
| email_address | String | Person email address | |
| address | String | Property street address | |
| zip_code | String | Property zip code | |
| city | String | Property city | |
| state* | String | Property state |
Get Lifestyle and Interests
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/owner/lifeint?state=FL&first_name=JUSTINA&last_name=NIN")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/owner/lifeint?state=FL&first_name=JUSTINA&last_name=NIN")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/owner/lifeint');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'FL',
'first_name' => 'JUSTINA',
'last_name' => 'NIN'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/owner/lifeint?state=FL&first_name=JUSTINA&last_name=NIN"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"magazines": "YES",
"technology": "YES",
"dieting_and_wellness": null,
"exercise": "YES",
"diy_home_improvement": null,
"jewelry": null,
"mail_order_buyer": "YES",
"membership_clubs": null,
"online_education": null,
"spectator_sports": null,
"outdoor_sports": null,
"investing": "YES",
"books": "YES",
"political_donor": null,
"hobbies_and_crafts": null,
"cosmetics": null,
"travel": "YES",
"charitable_donations": null,
"arts_and_antiques": "YES",
"pet_owner": "YES",
"cooking": null,
"diy_auto_work": null,
"health_and_beauty": null,
"parenting": null,
"music": null,
"film_and_movies": null,
"self_improvement": null,
"womens_apparel": "YES"
}
}
This endpoint retrieves the property owners’ lifestyle and interests when matching on a full name, phone number, email address, or on a complete mailing address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/owner/lifeint
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| first_name | String | First name | |
| last_name | String | Last name | |
| phone_number | String | Person phone number | |
| email_address | String | Person email address | |
| address | String | Property street address | |
| zip_code | String | Property zip code | |
| city | String | Property city | |
| state* | String | Property state |
Get Financials, Household Incomes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/owner/finhouse?state=FL&first_name=JUSTINA&last_name=NIN")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/owner/finhouse?state=FL&first_name=JUSTINA&last_name=NIN")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/owner/finhouse');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'FL',
'first_name' => 'JUSTINA',
'last_name' => 'NIN'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/owner/finhouse?state=FL&first_name=JUSTINA&last_name=NIN"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"est_household_income": "$100,000-149,999",
"length_of_residence": "11 - 15 years",
"home_purchase_date": null,
"est_home_purchase_price": null,
"dwelling_type": "Single Family Dwelling Unit",
"auto_year": null,
"number_of_credit_lines": "1",
"auto_make": null,
"credit_card_holder": "YES",
"auto_model": null,
"est_home_value": "$500,000-749,999",
"auto_edition": null,
"est_net_worth": "> $499,999",
"gas_credit_card_holder": "YES",
"upscale_card_holder": "YES",
"wealth_score": null
}
}
This endpoint retrieves property owners’ financials, household income, and wealth score when matching on a full name, phone number, email address, or on a complete mailing address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/owner/finhouse
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| first_name | String | First name | |
| last_name | String | Last name | |
| phone_number | String | Person phone number | |
| email_address | String | Person email address | |
| address | String | Property street address | |
| zip_code | String | Property zip code | |
| city | String | Property city | |
| state* | String | Property state |
Investment Analysis
The Investment Performance Object
The Investment Performance Object:
{
"principle_with_interest": 0,
"traditional": {
"occupancy": 93.9,
"cash_flow": 698.3238000000001,
"roi": 9.53343071672355,
"cap_rate": 9.53343071672355,
"rental_income": 1450.755,
"maintenance_cost": 73.25,
"traditional_utilities": 170,
"management_cost": 145.0755,
"traditional_property_tax": 70,
"traditional_home_owner_insurance": 91,
"cleaningFees": 0,
"traditional_rental_income_tax": 203.10570000000004,
"total_expenses": 752.4312,
"traditional_other": 0,
"hoa_dues": 0,
"expenses_details": {
"utilities": {
"expenses": {
"trash": null,
"water": null,
"cable": null,
"electricity": null,
"fuel": null
},
"sum": 0
}
}
},
"airbnb": {
"occupancy": 62.5,
"cash_flow": 1686.5176527777778,
"roi": 23.024131778536216,
"cap_rate": 23.024131778536216,
"rental_income": 2751.0100694444445,
"maintenance_cost": 73.25,
"airbnb_utilities": 170,
"management_cost": 275.10100694444446,
"airbnb_property_tax": 70,
"airbnb_home_owner_insurance": 91,
"airbnb_rental_income_tax": 385.1414097222223,
"cleaningFees": 0,
"total_expenses": 1064.4924166666667,
"airbnb_other": 0,
"hoa_dues": 0,
"expenses_details": {
"utilities": {
"expenses": {
"trash": null,
"water": null,
"cable": null,
"electricity": null,
"fuel": null
},
"sum": 0
}
}
},
"property_tax": 70
}
Property Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| Traditional Rental | The expected monthly rent if the property is rented out traditionally (long-term rental) | Double |
| Traditional ROI | Measures the returns of a property based on the amount of cash put down: (Cash Flow X 12 Months X 100)/Total Cash Invested | Double |
| Traditional Cap Rate | Measures the expected income and potential return of a property; does not take property financing into consideration, gives return as if property is paid off: (Cash Flow X 12 Months)/Property Price | Double |
| Traditional Vacancy Rate | The expected number of days the property won’t be reserved/rented per year. | Double |
| AirBnB Rental | The expected monthly rent if the property is listed on Airbnb (short-term vacation rental) versus if the property is rented out traditionally (long-term rental) | Double |
| AirBnB ROI | Measures the returns of a property based on the amount of cash put down: (Cash Flow X 12 Months X 100)/Total Cash Invested | Double |
| AirBnB Cap Rate | Measures the expected income and potential return of a property; does not take property financing into consideration, gives return as if property is paid off: (Cash Flow X 12 Months)/Property Price | Double |
| AirBnB Occupancy | The expected number of days the property will be reserved/rented per year. num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | Double |
| Down Payment | Down payment | Integer |
| Loan Type | Loan type | Integer |
| Interest Rate | Interest rate | Double |
| Payment Type | loan, or cash | String Default: cash |
| Traditional Occupancy | num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | Double |
| Is Days | If it's set to 0, the "traditional_occupancy" is considered as a percentage, if it's 1, it's considered as num of days per year | Integer Default: 0 |
| Max Bid | Sets the property listing price to its value | Integer |
| Traditional Maintenance Cost | Sets the traditional maintenance cost, e.g: 250 | Double |
| Airbnb Maintenance Cost | Sets the airbnb maintenance cost, e.g: 230 | Double |
| Traditional Management Cost | Sets the traditional management cost, e.g: 130 | Double |
| Airbnb Management Cost | Sets the airbnb management cost, e.g: 120 | Double |
| Airbnb Property Tax | Sets the airbnb property tax value, e.g: 1705 | Float |
| Traditional Property Tax | Sets the traditional property tax value, e.g: 1705 | Float |
| Airbnb Home Owner Insurance | Sets the airbnb home owner insurance cost, e.g: 83 | Integer |
| Traditional Home Owner Insurance | Sets the traditional home owner insurance cost, e.g: 83 | Integer |
| Airbnb Total Expenses | Sets the airbnb total expenses, e.g: 1700 | Double |
| Traditional Total Expenses | Sets the traditional total expenses, e.g: 1900 | Double |
| Startup Cost | First time costs, paid only once | Integer Default: 8000 |
Get Investment Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/664367/investment?state=GA&payment_type=loan&interest_rate=0.5&loan_type=1&down_payment=100")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/664367/investment?state=GA&payment_type=loan&interest_rate=0.5&loan_type=1&down_payment=100")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/664367/investment');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'GA',
'payment_type' => 'loan',
'interest_rate' => '0.5',
'loan_type' => '1',
'down_payment' => '100'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/664367/investment?state=GA&payment_type=loan&interest_rate=0.5&loan_type=1&down_payment=100"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
req.Header.Add("cache-control", "no-cache")
req.Header.Add("postman-token", "6dc17686-8955-e00f-f0bb-d8f60f49a16b")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"principle_with_interest": null,
"traditional": {
"occupancy": 92,
"cash_flow": 1500,
"roi": 222.22,
"cap_rate": 20.48,
"rental_income": 1927,
"maintenance_cost": 73,
"traditional_utilities": 0,
"management_cost": 193,
"traditional_property_tax": 70,
"traditional_home_owner_insurance": 91,
"cleaningFees": 0,
"traditional_rental_income_tax": 0,
"traditional_other": 0,
"hoa_dues": 0,
"total_expenses": 427,
"expenses_details": {
"utilities": {
"expenses": {
"trash": null,
"water": null,
"cable": null,
"electricity": null,
"fuel": null
},
"sum": 0
}
},
"nightRate": 63,
"monthly_rate": 2095,
"gross_rental": 2095,
"startup_cost": 8000,
"startup_cost_breakdown": {
"inspections": 500,
"total_repair_costs": 3500,
"furniture_and_appliances": 1000,
"closing_costs": 3000
},
"default_rental_income": 1927,
"default_occupancy": 92,
"default_night_rate": 63,
"breakdown": {
"range": 12,
"strategy": "Traditional",
"breakdown": [
{
"month": 1,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7998600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 2,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7997100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 3,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7995600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 4,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7994100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 5,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7992600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 6,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7991100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 7,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7989600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 8,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7988100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 9,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7986600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 10,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7985100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 11,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7983600,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
},
{
"month": 12,
"gross_rental_revenue": 2095,
"vacancy": 168,
"adjusted_gross_income": 1927,
"yield_on_investment": 0.01874976562792965,
"balance": 7982100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 1500
}
],
"avg_occupancy": 0.92,
"days_leased_per_month": 27.983333333333334,
"avg_daily_leased_rate": 68.87671232876713,
"cash_flow": 1500,
"net_operating_income": 1500,
"rental_yield": 20.477815699658702,
"annually_breakdown": [
{
"year": 1,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7982100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 2,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7964100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 3,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7946100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 4,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7928100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 5,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7910100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 6,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7892100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 7,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7874100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 8,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7856100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 9,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7838100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
},
{
"year": 10,
"gross_rental_revenue": 25140,
"vacancy": 2016,
"adjusted_gross_income": 23124,
"yield_on_investment": 0.01874976562792965,
"balance": 7820100,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 18000
}
]
}
},
"airbnb": {
"occupancy": 16,
"cash_flow": 541,
"roi": 80.14814814814815,
"cap_rate": 7.3856655290102395,
"rental_income": 1260,
"maintenance_cost": 73,
"airbnb_utilities": 170,
"management_cost": 315,
"airbnb_property_tax": 70,
"airbnb_home_owner_insurance": 91,
"airbnb_rental_income_tax": 0,
"cleaningFees": 0,
"airbnb_other": 0,
"hoa_dues": 0,
"total_expenses": 719,
"expenses_details": {
"utilities": {
"expenses": {
"trash": null,
"water": null,
"cable": null,
"electricity": null,
"fuel": null
},
"sum": 0
}
},
"nightRate": 267,
"monthly_rate": 8121,
"gross_rental": 8121,
"startup_cost": 8000,
"startup_cost_breakdown": {
"inspections": 500,
"total_repair_costs": 3500,
"furniture_and_appliances": 1000,
"closing_costs": 3000
},
"default_rental_income": 1260,
"default_occupancy": 16,
"default_night_rate": 267,
"breakdown": {
"range": 12,
"strategy": "Airbnb",
"breakdown": [
{
"month": 1,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7999559,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 2,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7999018,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 3,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7998477,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 4,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7997936,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 5,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7997395,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 6,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7996854,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 7,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7996313,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 8,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7995772,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 9,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7995231,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 10,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7994690,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 11,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7994149,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
},
{
"month": 12,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": 541,
"yield_on_investment": 0.0067624154698066275,
"balance": 7993608,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 541
}
],
"avg_occupancy": 0.16,
"days_leased_per_month": 4.866666666666666,
"avg_daily_leased_rate": 267,
"airbnb_tax": 0,
"cash_flow": 541,
"net_operating_income": 541,
"rental_yield": 7.3856655290102395,
"annually_breakdown": [
{
"year": 1,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7993608,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 2,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7987116,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 3,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7980624,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 4,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7974132,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 5,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7967640,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 6,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7961148,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 7,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7954656,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 8,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7948164,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 9,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7941672,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
},
{
"year": 10,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": 6492,
"yield_on_investment": 0.0067624154698066275,
"balance": 7935180,
"principle_with_interest": 0,
"interest_rate": "0.5",
"cash_flow": 6492
}
]
},
"ds_analysis": null
},
"property_tax": 70,
"custom_expenses": {},
"search_profile_details": null,
"cash_down_payment": "100",
"rehab_cost": {
"baseRehabCostPerSqft": 65,
"localFmr": 1830,
"nationalFmr": 1674,
"regionalMultiplier": 1.0931746632565456,
"estimatedRehabCostPerSqft": 71.06,
"totalEstimatedRehabCost": 136719.44,
"propertySize": 1924
}
}
}
This endpoint retrieves the property's investment performance.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/investment
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| down_payment | Integer | Down payment | |
| loan_type | Integer | Loan type | |
| interest_rate | Double | Interest rate | |
| payment_type | String | loan, cash | |
| airbnb_rental | Double | Monthly Airbnb rental income, ex: 2000 | |
| traditional_rental | Double | Monthly traditional rental income, ex: 1700 | |
| airbnb_occupancy | Double | num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | |
| traditional_occupancy | Double | num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | |
| is_days | Integer | 0 | If it's set to 0, the "traditional_occupancy" is considered as a percentage, if it's 1, it's considered as num of days per year |
| max_bid | Integer | Sets the property listing price to its value | |
| traditional_maintenance_cost | Double | Sets the traditional maintenance cost, e.g: 250 | |
| airbnb_maintenance_cost | Double | Sets the airbnb maintenance cost, e.g: 230 | |
| traditional_management_cost | Double | Sets the traditional management cost, e.g: 130 | |
| airbnb_management_cost | Double | Sets the airbnb management cost, e.g: 120 | |
| airbnb_property_tax | Float | Sets the airbnb property tax value, e.g: 1705 | |
| traditional_property_tax | Float | Sets the traditional property tax value, e.g: 1705 | |
| airbnb_home_owner_insurance | Integer | Sets the airbnb home owner insurance cost, e.g: 83 | |
| traditional_home_owner_insurance | Integer | Sets the traditional home owner insurance cost, e.g: 83 | |
| airbnb_total_expenses | Double | Sets the airbnb total expenses, e.g: 1700 | |
| traditional_total_expenses | Double | Sets the traditional total expenses, e.g: 1900 | |
| valuation_score | Boolean | false | If true, gets the property valuation score |
| startup_cost | Integer | 8000 |
Get Investment Breakdown
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/664367/investment/breakdown?state=GA&startup_cost=39000&recurring_cost=200&turnover_cost=200")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/664367/investment/breakdown?state=GA&startup_cost=39000&recurring_cost=200&turnover_cost=200")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/664367/investment/breakdown');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'GA',
'startup_cost' => '39000',
'recurring_cost' => '200',
'turnover_cost' => '200'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/664367/investment/breakdown?state=GA&startup_cost=39000&recurring_cost=200&turnover_cost=200"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"strategy": "Airbnb",
"breakdown": [
{
"month": 1,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 2,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 3,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 4,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 5,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 6,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 7,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 8,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 9,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 10,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 11,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"month": 12,
"gross_rental_revenue": 8121,
"cleaning_fee_collected": 0,
"vacancy": 6822,
"airbnb_hosting_fee": 39,
"adjusted_gross_income": 1260,
"net_rents": null,
"yield_on_investment": null,
"balance": null
}
],
"avg_occupancy": 0.16,
"days_leased_per_month": 4.866666666666666,
"avg_daily_leased_rate": 267,
"airbnb_tax": 0,
"cash_flow": null,
"net_operating_income": null,
"rental_yield": null,
"annually_breakdown": [
{
"year": 1,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 2,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 3,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 4,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 5,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 6,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 7,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 8,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 9,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
},
{
"year": 10,
"gross_rental_revenue": 97452,
"cleaning_fee_collected": 0,
"vacancy": 81864,
"airbnb_hosting_fee": 468,
"adjusted_gross_income": 15120,
"net_rents": null,
"yield_on_investment": null,
"balance": null
}
]
}
}
This endpoint retrieves the property's investment breakdown performance for Airbnb or Traditional.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/{id}/investment/breakdown
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| airbnb_rental | Double | Monthly Airbnb rental income, ex: 2000 | |
| traditional_rental | Double | Monthly traditional rental income, ex: 1700 | |
| airbnb_occupancy | Double | num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | |
| traditional_occupancy | Double | num of days per year, or a percentage Based on "is_days" param, eg: 70 as a percentage, or 150 as days | |
| is_days | Integer | 0 | If it's set to 0, the "traditional_occupancy" is considered as a percentage, if it's 1, it's considered as num of days per year |
| max_bid | Integer | Sets the property listing price to its value | |
| startup_cost | Double | 8000 | Startup cost for the investment, e.x: 8000 |
| source | String | Airbnb | Defines the monthly calculations should be calculated for "Airbnb" or "Traditional" |
| recurring_cost | Double | Recurring cost of the investment strategy, ex: 1435 | |
| turnover_cost | Double | Turnover cost |
Get Property Marker
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/property/marker?state=CA&pid=2207289&type=Investment")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/marker?state=CA&pid=2207289&type=Investment")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/property/marker');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'pid' => '2207289',
'type' => 'Investment'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/marker?state=CA&pid=2207289&type=Investment"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"id": 2207289,
"neighborhood": {
"id": 417524,
"name": "Buena Vista Park"
},
"address": "110 Alpine Terrace",
"city": "San Francisco",
"state": "CA",
"listPrice": 1695000,
"ROI": {
"airbnb_ROI": -0.46870588235294114,
"traditional_ROI": 0.31
},
"Cap": {
"airbnb_Cap": -0.47008849557522125,
"traditional_Cap": 0.31
}
}
}
This endpoint retrieves snapshot data on a specific property.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/property/marker
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| pid | Long | The property Id from the Mashvisor database. | |
| state* | String | The state of the property should be provided to the api or API will throw error 404. | |
| type | String | Investment, Airbnb, or Traditional | |
| payment | String | CASH | CASH, or LOAN |
| downPayment | Integer | The downpayment for mortgage calculations, e.g: 40000 | |
| loanType | Integer | The loan type, e.g: 30 | |
| interestRate | Double | The interest rate for mortgage, e.g: 3.51 | |
| loanInterestOnlyYears | Integer | ||
| loanArmType | Double | 3/1 | 3/1, 5/1, 7/1, 10/1 |
| loanArmRate | Double | .25 | |
| startupCost | Double | 8000 | |
| loanTerm | Double |
Get Airbnb Comparable Listings
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/269590/airbnb/details?state=IL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/269590/airbnb/details?state=IL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/269590/airbnb/details');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'IL'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/269590/airbnb/details?state=IL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"properties": [
{
"id": 85699347,
"propertyId": "1024962757174077406",
"hostId": "212313279",
"source": "Airbnb",
"status": "ACTIVE",
"nightPriceـnative": 271,
"nightPrice": 271,
"weeklyPrice": 0,
"monthlyPrice": 0,
"cleaningFeeNative": 150,
"currency": null,
"numOfBaths": 2.5,
"numOfRooms": 2,
"occupancy": 0,
"nightsBooked": 0,
"rentalIncome": 0,
"airbnbNeighborhoodId": 269590,
"name": "LUX Lincoln Park 2BD/2.5BA (+parking)",
"description": "Escape into this Lincoln Park gem!<br /><br />Guests love this home because:<br /><br />- Surrounded by top-notch restaurants/retail <br />- Close to all popular attractions that make Chicago so great<br />- Luxurious, newly-renovated interior filled with natural light<br />- Open-floor plan for entertaining!<br />- Easy in/out access on one of Chicago's safest streets<br />- Fast WiFi (800+ mbps)<br />- Comfy Novaform memory foam mattresses<br />- Easy-to-find parking outside on quiet one-way street<br />- Between red and brown line stations<br /><br /><b>The space</b><br />Enjoy our freshly, renovated fully-stocked home! This top, two-level apartment is located in Lincoln Park between North Ave and Armitage Ave offering all you will need plus more when visiting Chicago. The location and neighborhood are hard to beat when it comes to safety and reputation:<br /><br />“Lincoln Park is one of the wealthiest and most expensive communities in which to live. While the average single-family house is priced around $1 million, many homes in the area sell for more than $10 million. Forbes magazine named the area between Armitage Avenue, Willow Street, Burling Street, and Orchard Street as the most expensive block in Chicago.”<br /><br />Escape into this beautiful, spacious layout. Welcome yourself to this freshly luxurious-styled home featuring:<br /><br />* King en-suite with 14\" Novaform memory-foam mattress, upgraded bathroom with spacious shower/closets <br />* Upstairs bedroom with two queen beds each with 10\" Novaform memory-foam mattress and plenty closet/dresser space with quick access to the full bathroom on same level<br />* Fully stocked full bathrooms with towels & body wash, shampoo, conditioner. <br />* Large, sectional sofa in the living room<br />* A Custom Chef's Kitchen stocked w/ all SS appliances and quartz counter tops & backsplash: utensils/pots/pans/dinnerware/glasses<br />* Dining room table to seat 6 comfortably<br />* Large, designated workspace area in the top, loft space<br />* Children's play room with stuffed animals <br />* Kid-friendly with provided baby gate and Pack n Play<br />* Comfortable living with new windows through out!<br /><br />Other things to note about the space:<br /><br />-In/Out Access is hard to beat!<br />-Living room has 55” SMART TV w/ cable provided through YouTube TV. SMART TV w/ cable also in each bedroom on these 42\" SMART TVs! <br />-Dining room table can be converted into work-friendly space in addition to the desk area upstairs. <br />-2 separate staircases to get upstairs (small, spiral staircase from kitchen and back staircase off master bedroom)<br />-New, stackable washer/dryer, and new Hardwood floors through out. In between Armitage and North Ave. It is a truly unbeatable Lincoln Park location.<br />DONE TO PERFECTION! <br />CLOSE TO LAKE, ENTERTAINMENT, HIGH-END RETAIL AND RESTAURANTS. <br /><br />Q: Is the neighborhood safe?<br />A: Very much so. 24 hours a day. Lincoln Park is considered Chicago's safest neighborhood with many family homes.<br /><br />Q: PARKING?<br />A: There are always open parking spots right outside on the street. In addition, we also supply parking stickers for zone parking on the street/surrounding streets, but there usually is no enforcement. Not paying for parking in this area of Chicago is a huge plus! <br /><br />Q: Do I need to bring towels, shampoo/conditioner/body wash, a hair dryer, or linens? A: Nope! we provide all these things.<br /><br />Q: When can I check in or check out? A: Check in is 4pm and check out is 10am. Early check ins can be difficult if there are guests who check out on the same day of your check-in. <br /><br />Q: Can I come and go as I please? A: Yes. And we wouldn't trust any listing with which this isn't the case. <br /><br />Q: Is the place professionally cleaned between guests? A: Yes, and we take pride in providing a clean home for guests. <br /><br />Q: What's my total booking price? A: We honestly have no idea. With fees included, it only shows the guest how much they pay. This figure should be present after you enter your dates. Note that, pricing varies on a daily basis, and it actually uses some crazy algorithm to adjust it automatically, so we don't actually control this. <br /><br />Q: Are the beds comfortable? A: Very. Some guests say they're the best they've ever slept on! We like Novaform!<br /><br /><b>Guest access</b><br />You have full access to this top-level apartment! Very detailed directions provided within a couple days to check in:)<br /><br /><b>Other things to note</b><br />There are stairs throughout the home (main living/kitchen/dining/master is up a flight of carpeted stairs once entering and the upper-level bedroom and designated workspace is up another set of circular stairs or back staircase). If it’s challenging walking up and down stairs, this may not be the best place for you. <br /><br />There are CTA tracks behind. This home has no windows on that si",
"address": "Chicago, Illinois, United States",
"airbnbNeighborhood": "Ranch Triangle",
"airbnbCity": "Chicago",
"state": "IL",
"capacityOfPeople": 6,
"zip": "60614",
"propertyType": "Apartment",
"roomType": "Entire home/apt",
"roomTypeCategory": "entire_home",
"amenities": "1,2,4,5,8,394,522,657,23,30,415,671,672,33,34,35,36,37,39,40,41,44,45,46,47,51,308,54,57,60,61,64,65,72,73,74,77,79,85,86,87,89,90,91,92,93,94,95,96,103,104,107,363,236,625,251",
"reviewsCount": 72,
"startRating": 4.97,
"reviews": null,
"createdAt": "2025-12-04T10:20:38.000Z",
"updatedAt": "2025-12-04T10:20:38.000Z",
"lastSeen": "2025-09-13T12:14:58.000Z",
"userId": 212313279,
"numOfBeds": 3,
"lat": 41.91542816162109,
"lon": -87.65104675292969,
"image": "https://a0.muscache.com/pictures/miso/Hosting-1024962757174077406/original/9c5125ee-c65c-4a40-93e5-da6e5246c3a4.jpeg",
"url": null,
"airbnbListingId": null,
"estimationModel": "formula_based",
"isSuperhost": "1",
"translatedName": null,
"revpar": 0,
"rental_income": 0,
"neighborhood": {
"id": 269590,
"name": "Ranch Triangle"
},
"nightRate": 271,
"property_id": "1024962757174077406",
"airbnbZIP": "60614"
},
{
"id": 85699348,
"propertyId": "1024966392920308033",
"hostId": "212313279",
"source": "Airbnb",
"status": "out of market range",
"nightPriceـnative": 889,
"nightPrice": 889,
"weeklyPrice": 0,
"monthlyPrice": 0,
"cleaningFeeNative": 250,
"currency": null,
"numOfBaths": 4.5,
"numOfRooms": 4,
"occupancy": 0,
"nightsBooked": 0,
"rentalIncome": 0,
"airbnbNeighborhoodId": 269590,
"name": "GROUP LUX Lincoln Park 4BD/4.5BA Home (+parking)",
"description": "Escape into this Lincoln Park Masterpiece! <br /><br />Guests love this home because:<br /><br />- Surrounded by top-notch restaurants/retail <br />- Close to all popular attractions that make Chicago so great<br />- Luxurious, newly-renovated interior filled with natural light<br />- Open-floor plan for entertaining!<br />- Easy in/out access on one of Chicago's safest streets<br />- Fast WiFi (800+ mbps)<br />- Comfy Novaform memory foam mattresses<br />- Easy-to-find parking outside on quiet one-way street<br />- Between red and brown line stations<br /><br /><b>The space</b><br />Enjoy our freshly, renovated fully-stocked home! This multi-level home is located in Lincoln Park between North Ave and Armitage Ave offering all you will need plus more when visiting Chicago. The location and neighborhood are hard to beat when it comes to safety and reputation:<br /><br />“Lincoln Park is one of the wealthiest and most expensive communities in which to live. While the average single-family house is priced around $1 million, many homes in the area sell for more than $10 million. Forbes magazine named the area between Armitage Avenue, Willow Street, Burling Street, and Orchard Street as the most expensive block in Chicago.”<br /><br />Escape into this beautiful, spacious 4 bedroom/4.5 bath home. Welcome yourself to this freshly luxurious-styled home featuring:<br /><br />* 2 King en-suite bedrooms each with 14\" Novaform memory-foam mattress, and upgraded bathrooms <br />* Top-level bedroom has two queen beds each with 10\" Novaform memory-foam mattress and plenty closet/dresser space with quick access to the full bathroom on same level<br />* 4th bedroom has Queen-Size bed with 10\" Novaform memory foam mattress as well with large, walk-in closet with washer/dryer<br />* 4 Fully-stocked full bathrooms with towels & body wash, shampoo, conditioner and 1 half bath on middle level<br />* Large, sectional sofa in the middle living room and pullout sectional sofa w/ memory-foam mattress in the lower living room<br />* 2 Custom Chef's Kitchens each stocked w/ all SS appliances and quartz counter tops & backsplash: utensils/pots/pans/dinnerware/glasses<br />* 2 Dining rooms to seat 6 on middle level, and 4 on lower level<br />* Large, designated workspace area in the top, loft space<br />* Children's play room with stuffed animals <br />* Kid-friendly with provided baby gate and Pack n Play<br />* Comfortable living with new windows through out!<br /><br />Other things to note about the space:<br /><br />-In/Out Access is hard to beat!<br />-Each Living room has 55” SMART TV w/ cable provided through YouTube TV. SMART TV w/ cable also in each bedroom on these 42\" SMART TVs! <br />-Dining room tables can be converted into work-friendly space in addition to the desk area (top level). <br />-One rear, indoor staircase which connects all levels in the entire home <br />-2 new washer/dryers, and new Hardwood floors through out. In between Armitage and North Ave. It is a truly unbeatable Lincoln Park location.<br />DONE TO PERFECTION! <br />CLOSE TO LAKE, ENTERTAINMENT, HIGH-END RETAIL AND RESTAURANTS. <br /><br />Q: Is the neighborhood safe?<br />A: Very much so. 24 hours a day. Lincoln Park is considered Chicago's safest neighborhood with many family homes.<br /><br />Q: PARKING?<br />A: There are always open parking spots right outside on the street. In addition, we also supply parking stickers for zone parking on the street/surrounding streets, but there usually is no enforcement. Not paying for parking in this area of Chicago is a huge plus! <br /><br />Q: Do I need to bring towels, shampoo/conditioner/body wash, a hair dryer, or linens? A: Nope! we provide all these things.<br /><br />Q: When can I check in or check out? A: Check in is 4pm and check out is 10am. Early check ins can be difficult if there are guests who check out on the same day of your check-in. <br /><br />Q: Can I come and go as I please? A: Yes. And we wouldn't trust any listing with which this isn't the case. <br /><br />Q: Is the place professionally cleaned between guests? A: Yes, and we take pride in providing a clean home for guests. <br /><br />Q: What's my total booking price? A: We honestly have no idea. With fees included, it only shows the guest how much they pay. This figure should be present after you enter your dates. Note that, pricing varies on a daily basis, and it actually uses some crazy algorithm to adjust it automatically, so we don't actually control this. <br /><br />Q: Are the beds comfortable? A: Very. Some guests say they're the best they've ever slept on! We like Novaform!<br /><br /><b>Guest access</b><br />You have full access to this detached home! Very detailed directions provided within a couple days to check in:)<br /><br /><b>Other things to note</b><br />There are stairs throughout the home (main living/kitchen/dining/master is up a flight of carpeted stairs once entering and the upper-level bedroom and design",
"address": "Chicago, Illinois, United States",
"airbnbNeighborhood": "Ranch Triangle",
"airbnbCity": "Chicago",
"state": "IL",
"capacityOfPeople": 12,
"zip": "60614",
"propertyType": "House",
"roomType": "Entire home/apt",
"roomTypeCategory": "entire_home",
"amenities": "1,2,4,5,8,394,522,528,657,23,30,415,671,672,33,34,35,36,37,39,40,41,44,45,46,47,51,308,54,57,60,61,64,65,72,73,74,77,79,85,86,87,89,90,91,92,93,94,95,96,103,104,107,363,236,625,251",
"reviewsCount": 11,
"startRating": 4.82,
"reviews": null,
"createdAt": "2025-12-04T10:20:38.000Z",
"updatedAt": "2025-12-04T10:20:38.000Z",
"lastSeen": "2025-09-13T12:14:58.000Z",
"userId": 212313279,
"numOfBeds": 6,
"lat": 41.91704177856445,
"lon": -87.65309143066406,
"image": "https://a0.muscache.com/pictures/miso/Hosting-1024966392920308033/original/5732b347-24f6-459b-9e93-bb8fe45d7c26.jpeg",
"url": null,
"airbnbListingId": null,
"estimationModel": "formula_based",
"isSuperhost": "1",
"translatedName": null,
"revpar": 0,
"rental_income": 0,
"neighborhood": {
"id": 269590,
"name": "Ranch Triangle"
},
"nightRate": 889,
"property_id": "1024966392920308033",
"airbnbZIP": "60614"
},
{
"id": 85699349,
"propertyId": "1064031374927761020",
"hostId": "191746118",
"source": "Airbnb",
"status": "ACTIVE",
"nightPriceـnative": 222,
"nightPrice": 222,
"weeklyPrice": 0,
"monthlyPrice": 0,
"cleaningFeeNative": 100,
"currency": null,
"numOfBaths": 1,
"numOfRooms": 2,
"occupancy": 0,
"nightsBooked": 0,
"rentalIncome": 0,
"airbnbNeighborhoodId": 269590,
"name": "Cozy apartment in the heart of Lincoln Park",
"description": "You will be close to everything when you stay at this centrally-located apartment. Right in the heart of Lincoln Park, walkable to the zoo, restaurants, bars and much more. Blocks from DePaul university, great for parents visiting kids in the city. Perfect place to call home for a brief time in Chicago!<br /><br /><b>The space</b><br />Parking<br />• Street parking is free before 6pm as indicated by signs. After 6pm you are required to place a parking passes on your dashboard that is valid for a single night. <br />• We have daily parking passes for street parking available in zone 143. They need to be changed out each night. Passes will be located in the silver box on shelf in the living room. <br /><br />General House Info:<br />Internet - We have high speed internet throughout the unit. <br /><br />TV - cable TV and an Amazon Firestick with Prime Video and other streaming capabilities<br /><br />We have plenty of towels, dishes, silverware, toilet paper, paper towels, coffee filters(no coffee), and most kitchen essentials. Let us know if we are out of anything! <br /><br />Trash and Recycling are located behind the house in the courtyard. <br /><br />Free in unit laundry available, though we may not have detergent.<br /><br /><b>Guest access</b><br />The apartment is your private space while you're here. The back courtyard is considered a shared space for the building and other tenants.<br /><br /><b>Registration Details</b><br />R24000115186",
"address": "Chicago, Illinois, United States",
"airbnbNeighborhood": "Mid-North District",
"airbnbCity": "Chicago",
"state": "IL",
"capacityOfPeople": 5,
"zip": "60614",
"propertyType": "Apartment",
"roomType": "Entire home/apt",
"roomTypeCategory": "entire_home",
"amenities": "1,4,5,8,139,657,23,665,30,671,672,33,34,35,36,39,40,41,44,45,46,47,51,308,54,61,64,322,72,74,77,79,85,89,90,91,219,92,93,94,95,96,611,101,103,104,236,625,251",
"reviewsCount": 30,
"startRating": 4.77,
"reviews": null,
"createdAt": "2025-12-04T10:20:38.000Z",
"updatedAt": "2025-12-04T10:20:38.000Z",
"lastSeen": "2025-11-12T20:51:39.000Z",
"userId": 191746118,
"numOfBeds": 2,
"lat": 41.92248153686523,
"lon": -87.64116668701172,
"image": "https://a0.muscache.com/pictures/hosting/Hosting-1064031374927761020/original/c473909e-35b3-429e-b407-14179989e301.jpeg",
"url": null,
"airbnbListingId": null,
"estimationModel": "formula_based",
"isSuperhost": "1",
"translatedName": null,
"revpar": 0,
"rental_income": 0,
"neighborhood": {
"id": 269590,
"name": "Mid-North District"
},
"nightRate": 222,
"property_id": "1064031374927761020",
"airbnbZIP": "60614"
}
],
"num_of_properties": 210,
"avg_occupancy": 0,
"avg_price": 374.1333,
"num_page_properties": 3,
"page": 1
}
}
Fetches nearby Airbnb rental properties with similar features—like beds, baths, and property type—to the target MLS listing, allowing users to identify short-term rental comps, estimate potential income, and analyze neighborhood-level Airbnb performance.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/airbnb/details
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The neighborhood Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| page | Integer | 1 | Page number |
| items | Integer | 3 | items number |
| bedrooms | Integer | bedrooms number | |
| pid | Long | Property to fetch comparble listings for. | |
| sort_by | String | Sorting type. Possible input: * name * similarity * distance * address * occupancy * night_price * rental_income * num_of_baths * num_of_rooms * reviews_count |
|
| order | String | desc | Order type: desc, or asc |
| format | String | json | json, or xml |
Get Traditional Comparable Listings
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/397651/traditional/listing?format=json&items=9&order=desc&page=1&pid=325215&sort_by=address&state=ny")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/397651/traditional/listing?format=json&items=9&order=desc&page=1&pid=325215&sort_by=address&state=NY")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/397651/traditional/listing');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'format' => 'json',
'order' => 'desc',
'pid' => '325215',
'state' => 'ny',
'items' => '4',
'page' => '8',
'sort_by' => 'address'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/397651/traditional/listing?format=json&items=9&order=desc&page=1&pid=325215&sort_by=address&state=ny"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"results": [
{
"id": 6871912,
"title": "Single Family Residence, Cottage,Farm House - Red Hook, NY",
"lon": -73.87079620361328,
"lat": 42.01290130615234,
"state": "NY",
"city": "Red Hook",
"county": "DUTCHESS COUNTY",
"neighborhood": "Red Hook",
"description": "Charming and light filled two-story Guest house on one landscaped acre close to Red Hook Schools and Village. This is a long-term rental and it is unfurnished. It is situated in a country setting with Red Hook schools and Rec Park/pool close by. The first floor features a large country kitchen with breakfast area, dining room with Southern exposure and a living room. Renovated full bath is off the hallway to the first-floor office or playroom. Hardwood floors on the first floor with two carpeted bedrooms on the second floor with half bath. Every room is light filled. The house has a stone patio to relax and BBQ. The landlord lives in the converted barn at the back of the property. Tenant is responsible for rent plus utilities, cable and garbage pick-up. The landlord will pay for grounds care and snowplowing. Renters insurance required. Possible pet with landlords' approval, unless pet is protected by law.",
"price": 2650,
"baths": 2,
"full_baths": 1,
"beds": 2,
"num_of_units": null,
"sqft": 1300,
"lot_size": 43560,
"days_on_market": 19,
"year_built": 1900,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "818966",
"image": "http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f4156957878r.jpg",
"extra_images": "http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f4156957878r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f2439090194r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f3463647697r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f808510997r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f3143874538r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f2232316146r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f3921740121r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f536008703r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f4173461202r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f2894052327r.jpg,http://lh.rdcpix.com/8ea03f7061c23ac7bc865d4a2f830851l-f65519802r.jpg",
"zipcode": "12571",
"address": "95 Mill Road",
"type": "single_home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"listhub_key": "3yd-MLSLINY-818966",
"broker_name": "Northern Dutchess Realty, Inc.",
"broker_number": "(845) 876-8588",
"broker_url": "http://northerndutchessrealty.com",
"source": "OneKey MLS",
"mls_name": "OneKey MLS",
"original_source": "Listhub",
"architecture_style": "Cottage",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": "Baseboard",
"cooling_system": "Window Unit(s) A/C",
"view_type": "Water",
"schools": "[{\"category\":\"Elementary\",\"name\":\"Mill Road-Primary Grades\",\"district\":\"Red Hook\"},{\"category\":\"MiddleOrJunior\",\"name\":\"Linden Avenue Middle School\",\"district\":\"Red Hook\"},{\"category\":\"High\",\"name\":\"Red Hook Senior High School\",\"district\":\"Red Hook\"}]",
"characteristics": "Dishwasher, Dryer, Range, Washer",
"directions": "Route 9 North of village to Mill Road. Or take Route 9 to Rockefeller to Mill Road.",
"parcel_number": "134889-6273-00-560367-0000",
"neighborhood_id": 397651,
"url": "https://www.realtor.com/rentals/details/95-Mill-Rd_Red-Hook_NY_12571_M37546-86915?f=listhub&s=MLSLINY&m=818966&c=mashv",
"disclaimer": "Copyright © 2025 OneKey MLS. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-02-02T22:00:00.000Z",
"modification_timestamp": "2025-02-03T20:32:30.000Z",
"created_at": "2020-05-12T02:20:32.000Z",
"updated_at": "2025-02-22T07:45:48.000Z",
"neighborhood_zipcode": "12571",
"similarity": 0.7,
"distance": 1.39056
},
{
"id": 7238080,
"title": "House, Dutch - Red Hook, NY",
"lon": -73.86148071289062,
"lat": 42.03041839599609,
"state": "NY",
"city": "Red Hook",
"county": "DUTCHESS",
"neighborhood": "Red Hook",
"description": "Pre-dating the American Revolution by more than 30 years, this expertly restored circa 1747 Dutch vernacular furnished farmhouse is gracefully sited on a quiet country lane. The historic William Pitcher farmstead boasts 3,100 square feet of living space- three bedrooms, two and a half bathrooms, a gracious nine-foot wide center hall, two parlors with wood-burning fireplaces, a mud room, and a spacious eat-in kitchen with pastoral views to the north. A large bluestone patio off the kitchen is shaded by a grove of ancient locust trees. With original wide board floors, lime-washed plaster walls, and massive exposed beams, as well as brand new appliances and high-efficiency systems, this home has 18th century charm with 21st century comforts.Convenient to celebrated farm markets, scenic walking trails, restaurants, and cultural venues. Fifteen minutes to the Taconic Parkway or Rhinecliff train station.",
"price": 8500,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": null,
"lot_size": 3746160,
"days_on_market": 286,
"year_built": 1747,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": null,
"walkscore": null,
"mls_id": "154403",
"image": "http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f4038773813r.jpg",
"extra_images": "http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f4038773813r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f2476652913r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f4224144645r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1355080298r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f2134860390r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1328528223r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1210224515r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1644027946r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f2605528133r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f4200142549r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f3854035200r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1418042607r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1709846553r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f1200368814r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f2737524069r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f647862189r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f3030966014r.jpg,http://lh.rdcpix.com/2077544af5231ccf5b296b2c63d7b16el-f2301840697r.jpg",
"zipcode": "12571",
"address": "159 Pitcher Lane",
"type": "single_home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"listhub_key": "3yd-CGNDNY-154403",
"broker_name": "Gary DiMauro Real Estate, Inc. - Rhinebeck",
"broker_number": "8765100",
"broker_url": null,
"source": "Columbia Greene and Northern Dutchess MLS",
"mls_name": "Columbia Greene and Northern Dutchess MLS",
"original_source": "Listhub",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": "Oil, Other (Heating)",
"cooling_system": null,
"view_type": "Park",
"schools": null,
"characteristics": null,
"directions": null,
"parcel_number": "6274-00-814011",
"neighborhood_id": 397651,
"url": "https://www.realtor.com/rentals/details/159-Pitcher-Ln_Red-Hook_NY_12571_M93185-85397?f=listhub&s=CGNDNY&m=154403&c=mashv",
"disclaimer": "Copyright © 2025 Columbia Greene and Northern Dutchess MLS. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-09-08T21:00:00.000Z",
"modification_timestamp": "2025-05-10T18:01:54.000Z",
"created_at": "2022-05-18T04:50:26.000Z",
"updated_at": "2025-06-21T23:46:06.000Z",
"neighborhood_zipcode": "12571",
"similarity": 0.85,
"distance": 0.865579
},
{
"id": 7427222,
"title": "Single Family Residence, Colonial - Red Hook, NY",
"lon": -73.87509155273438,
"lat": 41.99391937255859,
"state": "NY",
"city": "Red Hook",
"county": "DUTCHESS COUNTY",
"neighborhood": "Red Hook",
"description": "FOR RENT â UPDATED 3 BEDROOM 1 BATH HOME in the Village of Red Hook. Living room, formal dining room, enclosed porch, washer/dryer, split unit. Nice size backyard. Ample parking for 4 cars. One year minimum lease. Good credit and references. No smoking. Tenant pays all utilities (electric, heat/oil, water, garbage, cable/internet) and responsible for lawn mowing and snow removal. One month security deposit, 1st months rent at the signing of the lease. Pets - landlord approval",
"price": 3300,
"baths": 1,
"full_baths": 1,
"beds": 3,
"num_of_units": null,
"sqft": 1524,
"lot_size": 5227,
"days_on_market": 47,
"year_built": 1900,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "876668",
"image": "http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2428666954r.jpg",
"extra_images": "http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2428666954r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2133199404r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f1378961170r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f3440008102r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2475708971r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2351445847r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2143176020r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f3373893920r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f1081584379r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f528204252r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f2793885200r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f572647452r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f766868467r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f849708011r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f1045169772r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f3909889114r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f1724577281r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f3220048570r.jpg,http://lh.rdcpix.com/b3e126d9fc774489317ffcabe654d82el-f3335049129r.jpg",
"zipcode": "12571",
"address": "12 Elizabeth Street",
"type": "single_home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"listhub_key": "3yd-MLSLINY-876668",
"broker_name": "HomeSmart Homes and Estates",
"broker_number": "845-547-0005",
"broker_url": "http://www.homesmarthomesandestates.com",
"source": "OneKey MLS",
"mls_name": "OneKey MLS",
"original_source": "Listhub",
"architecture_style": "Colonial",
"pets_allowed": 1,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": "Baseboard, Hot Water (Heating)",
"cooling_system": "Multi Units, Wall/Window Unit(s), Window Unit(s)",
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Mill Road-Intermediate(grades 3-5)\",\"district\":\"Red Hook\"},{\"category\":\"MiddleOrJunior\",\"name\":\"Linden Avenue Middle School\",\"district\":\"Red Hook\"},{\"category\":\"High\",\"name\":\"Red Hook Senior High School\",\"district\":\"Red Hook\"}]",
"characteristics": "Dryer, Microwave, Range, Refrigerator",
"directions": null,
"parcel_number": "134801-6272-10-456675-0000",
"neighborhood_id": 397651,
"url": "https://www.realtor.com/rentals/details/12-Elizabeth-St_Red-Hook_NY_12571_M35584-07196?f=listhub&s=MLSLINY&m=876668&c=mashv",
"disclaimer": "Copyright © 2025 OneKey MLS. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-06-10T21:00:00.000Z",
"modification_timestamp": "2025-06-12T00:11:29.000Z",
"created_at": "2024-08-10T23:12:58.000Z",
"updated_at": "2025-07-27T22:15:50.000Z",
"neighborhood_zipcode": "12571",
"similarity": 0.63,
"distance": 2.47237
}
],
"total_results": 3,
"total_pages": 1,
"current_page": 1
}
}
Retrieves nearby traditionally rented properties with similar features—such as beds, baths, and home type—to the target MLS listing, helping investors identify rental comps, benchmark income potential, and analyze neighborhood performance.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/traditional/listing
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The neighborhood Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| page | Integer | 1 | Page number |
| items | Integer | 3 | items number |
| category | Integer | bedrooms number | |
| min_price | Integer | min_price of rental value | |
| max_price | Integer | max_price of rental value | |
| pid | Long | Property to fetch comparble listings for. | |
| sort_by | String | Sorting type. Possible input: * address * similarity * distance * beds * baths * price |
|
| order | String | desc | Order type: desc, or asc |
| format | String | json | json, or xml |
Rental Rates
The Rental Rates Object
The Rental Rates Object:
{
"retnal_rates": {
"studio_value": 2100,
"one_room_value": 2500,
"two_room_value": 3890,
"three_room_value": 4997.5,
"four_room_value": 7995
},
"sample_count": 268,
"detailed": [
{
"state": "CA",
"city": null,
"neighborhood": "117954",
"zipcode": null,
"beds": "0",
"count": 7,
"min": 2000,
"max": 3000,
"avg": 2221.4285714285716,
"median": 2100,
"adjusted_rental_income": 2022.3
},
{
"state": "CA",
"city": null,
"neighborhood": "117954",
"zipcode": null,
"beds": "1",
"count": 31,
"min": 995,
"max": 4500,
"avg": 2641.6129032258063,
"median": 2500,
"adjusted_rental_income": 2407.5
},
{
"state": "CA",
"city": null,
"neighborhood": "117954",
"zipcode": null,
"beds": "2",
"count": 136,
"min": 1300,
"max": 7500,
"avg": 3979.8970588235293,
"median": 3890,
"adjusted_rental_income": 3746.07
},
{
"state": "CA",
"city": null,
"neighborhood": "117954",
"zipcode": null,
"beds": "3",
"count": 78,
"min": 645,
"max": 12000,
"avg": 5288.961538461538,
"median": 4997.5,
"adjusted_rental_income": 4812.5925
},
{
"state": "CA",
"city": null,
"neighborhood": "117954",
"zipcode": null,
"beds": "4",
"count": 16,
"min": 4700,
"max": 27000,
"avg": 11459.6875,
"median": 7995,
"adjusted_rental_income": 7699.1849999999995
}
]
}
Mashvisor API allows estimating rental rates for a specific location either for long-term rentals (traditional rent strategy), or for short-term rentals (Airbnb, VRBO, or Homeaway). These estimates are categorized by the number of bedrooms of a target property/location. The estimates are based on 12-month historical performance for the target area and calculated using sampling of similar listings either recently or currently actively rented in the area.
Property Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| Studio Value | The expected monthly rent if a studio property is rented out | Double |
| One Room Value | The expected monthly rent if a one bedroom property is rented out | Double |
| Two Room Value | The expected monthly rent if a two bedrooms property is rented out | Double |
| Three Room Value | The expected monthly rent if a three bedrooms property is rented out | Double |
| Four Room Value | The expected monthly rent if a four bedrooms property is rented out | Double |
Get Rental Rates
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rental-rates?city=Collinsville&state=OK&neighborhood=51492&source=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rental-rates?city=Collinsville&state=OK&neighborhood=51492&source=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/rental-rates');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'city' => 'Collinsville',
'state' => 'OK',
'neighborhood' => '51492',
'source' => 'airbnb'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rental-rates?city=Collinsville&state=OK&neighborhood=51492&source=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"retnal_rates": {
"studio_value": null,
"one_room_value": 1009,
"two_room_value": 278,
"three_room_value": 991,
"four_room_value": 1075
},
"sample_count": 18,
"detailed": [
{
"state": "OK",
"city": "Collinsville",
"neighborhood": "51492",
"zipcode": null,
"beds": "1",
"count": 2,
"min": 777,
"max": 1240,
"avg": 1008.5,
"median": 1009,
"adjusted_rental_income": 1136.0625,
"median_night_rate": 95,
"median_occupancy": 36
},
{
"state": "OK",
"city": "Collinsville",
"neighborhood": "51492",
"zipcode": null,
"beds": "2",
"count": 4,
"min": 166,
"max": 360,
"avg": 270.5,
"median": 278,
"adjusted_rental_income": 196.0861111111115,
"median_night_rate": 132,
"median_occupancy": 7
},
{
"state": "OK",
"city": "Collinsville",
"neighborhood": "51492",
"zipcode": null,
"beds": "3",
"count": 8,
"min": 353,
"max": 1923,
"avg": 1056.375,
"median": 991,
"adjusted_rental_income": 1035.586111111111,
"median_night_rate": 193,
"median_occupancy": 19
},
{
"state": "OK",
"city": "Collinsville",
"neighborhood": "51492",
"zipcode": null,
"beds": "4",
"count": 3,
"min": 819,
"max": 1616,
"avg": 1170,
"median": 1075,
"adjusted_rental_income": 814.9638888888883,
"median_night_rate": 312,
"median_occupancy": 11
},
{
"state": "OK",
"city": "Collinsville",
"neighborhood": "51492",
"zipcode": null,
"beds": "null",
"count": 1,
"min": 1073,
"max": 1073,
"avg": 1073,
"median": 1073,
"adjusted_rental_income": 1237.3499999999997,
"median_night_rate": 79,
"median_occupancy": 45
}
]
}
}
This endpoint retrieves traditional neighborhood/area data with comparable attributes and within proximity from the target MLS property.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rental-rates
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| neighborhood | Long | Neighborhood id you're targeting | |
| zip_code | Integer | Any postal zip code. | |
| source | String | Targeting service to fetch estiamtes for. Possible inputs: * airbnb * traditional |
Rento Calculator
Lookup
Sample Request
OkHttpClient client = new OkHttpClient();
// City Level:
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&city=Austin&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
// Zip Code Level:
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&zip_code=76549&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
// Address Level:
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&zip_code=76549&resource=airbnb&beds=3&address=3703 Endicott Dr&city=Killeen&lat=31.0778997&lng=-97.7930442")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require "uri"
require "net/http"
# City Level:
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&resource=airbnb&city=Austin&beds=2")
# Zip Code Level:
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?city=Chicago&state=TX&zip_code=76549&resource=airbnb&beds=2")
# Address Level:
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&zip_code=76549&resource=airbnb&beds=3&address=3703 Endicott Dr&city=Killeen&lat=31.0778997&lng=-97.7930442")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = "YOUR_API_KEY"
response = https.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/lookup');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
// City Level:
$request->setQueryData(array(
'state' => 'TX',
'city' => 'Austin',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'
));
// Zip Code Level:
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
));
// Address Level:
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'address' => '3703 Endicott Dr',
'city' => 'Killeen',
'lat' => '31.0778997',
'lng' => '-97.7930442',
'source' => 'airbnb',
'beds' => '2',
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
// city level:
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&city=Austin&resource=airbnb&beds=2"
// Zip Code Level:
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&zip_code=76549&resource=airbnb&beds=2"
// Address Level:
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/lookup?state=TX&zip_code=76549&resource=airbnb&beds=3&address=3703 Endicott Dr&city=Killeen&lat=31.0778997&lng=-97.7930442"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"median_home_value": 387133,
"sample_size": 592,
"median_occupancy_rate": 35,
"median_rental_income": 2495,
"median_night_rate": 232,
"median_guests_capacity": 4,
"median_annual_revenue": 29940,
"median_annual_expenses": 21162,
"annual_cash_flow": 7586.860000000001,
"adjusted_rental_income": 2395.7383333333332,
"price_to_rent_ratio": 13.466029609521907,
"cash_flow": 632.2383333333333,
"cash_on_cash": 1.9347670305738105,
"cap_rate": 1.9597554328874056,
"expenses": 1763.5,
"tax_rate": 1.8,
"market": {
"id": null,
"name": null,
"city": "Austin",
"state": "TX",
"country": "US",
"dist": null,
"airbnb_regulations": null,
"currency": "USD"
},
"principle_with_interest": 0,
"expenses_map": {
"propertyTax": 581,
"maintenace": 323,
"management": 599,
"rentalIncomeTax": 0,
"insurance": 91,
"utilities": 170,
"hoa_dues": 0,
"cleaningFees": 0
},
"revpar": 81.2,
"revpan": 81.2,
"city_insights_fallback": false
}
}
Delivers instant investment insights for any location—whether a city, zip code, neighborhood, or street address—covering Airbnb and traditional strategies. Includes cap rate, cash on cash return, median home price, occupancy rate, nightly rates, and rental income estimates to help power underwriting, ROI forecasting, and smart investor decisions.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/lookup
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Beds
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/beds?state=TX&zip_code=76549&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/beds?state=TX&zip_code=76549&resource=airbnb&beds=2")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/beds');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/beds?state=TX&zip_code=76549&resource=airbnb&beds=2"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"beds": "3",
"count": 22,
"median": 781,
"adjusted_rental_income": 862.008333333333,
"median_night_rate": 138,
"median_occupancy": 21,
"cleaning_fee": 102
},
{
"beds": "2",
"count": 20,
"median": 357,
"adjusted_rental_income": 331.8458333333334,
"median_night_rate": 99,
"median_occupancy": 12,
"cleaning_fee": 83
},
{
"beds": "4",
"count": 17,
"median": 495,
"adjusted_rental_income": 634.491666666667,
"median_night_rate": 153,
"median_occupancy": 15,
"cleaning_fee": 125
},
{
"beds": "1",
"count": 4,
"median": 608,
"adjusted_rental_income": 637.4319444444444,
"median_night_rate": 91,
"median_occupancy": 22,
"cleaning_fee": 55
},
{
"beds": "7",
"count": 2,
"median": 217,
"adjusted_rental_income": -85.06527777777842,
"median_night_rate": 313,
"median_occupancy": 2,
"cleaning_fee": 185
}
]
}
This endpoint retrieves the locations’ count with city, zip code, neighborhood, or street address and its revenue and occupancy breakdown based on the number of bedrooms.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/beds
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Baths
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/baths?state=TX&zip_code=76549&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/baths?state=TX&zip_code=76549&resource=airbnb&beds=2")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/baths');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/baths?state=TX&zip_code=76549&resource=airbnb&beds=2&_t=QcG6kP3yDnUHD67hWAAQyqrDdFm4gBPW&baths=2"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"baths": 2,
"count": 13,
"min": 61,
"max": 933,
"avg": 422.84615384615387,
"median": 364,
"adjusted_rental_income": 345.5333333333334,
"median_night_rate": 104,
"median_occupancy": 12
},
{
"baths": 1,
"count": 7,
"min": 181,
"max": 775,
"avg": 439.7142857142857,
"median": 337,
"adjusted_rental_income": 309.2361111111113,
"median_night_rate": 80,
"median_occupancy": 13
}
]
}
This endpoint retrieves the locations’ count with city, zip code, neighborhood, or street address and its revenue and occupancy breakdown based on the number of bathrooms.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/baths
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Nearby Listings
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/nearby-listings?state=TX&zip_code=76549&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/nearby-listings?state=TX&zip_code=76549&resource=airbnb&beds=2")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/nearby-listings');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/nearby-listings?state=TX&zip_code=76549&resource=airbnb&beds=2&_t=QcG6kP3yDnUHD67hWAAQyqrDdFm4gBPW&baths=2"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"address": "380 Shady Loop",
"city": "Killeen",
"state": "TX",
"zip": "76549",
"beds": 2,
"baths": 1,
"home_type": "Single Family Residential",
"list_price": 275000,
"neighborhood": "Killeen",
"image_url": "http://lh.rdcpix.com/6fc0bad637b75d2e03b37ff99f64d11fl-f562944081r.jpg",
"sqft": 696,
"mls_id": "597417",
"days_on_market": 74,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "597417",
"has_pool": "false",
"is_water_front": "false",
"num_of_units": null,
"latitude": 30.9318,
"longitude": -97.7966,
"traditional_ROI": 1.81857,
"airbnb_ROI": -1.475,
"traditional_rental": 975,
"airbnb_rental": 372,
"traditional_cap": 1.85164,
"airbnb_cap": -1.50182,
"neighborhood_zipcode": "76544"
},
{
"address": "1231 Royal Crest Drive",
"city": "Killeen",
"state": "TX",
"zip": "76549",
"beds": 2,
"baths": 2,
"home_type": "Townhouse",
"list_price": 134900,
"neighborhood": "Killeen",
"image_url": "http://lh.rdcpix.com/0a7994c2b0bc4178aa77a1c18383522al-f3051427737r.jpg",
"sqft": 1022,
"mls_id": "590501",
"days_on_market": 123,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "590501",
"has_pool": "false",
"is_water_front": "false",
"num_of_units": null,
"latitude": 31.1104,
"longitude": -97.7675,
"traditional_ROI": 7.18156,
"airbnb_ROI": -2.32809,
"traditional_rental": 1353,
"airbnb_rental": 372,
"traditional_cap": 7.44774,
"airbnb_cap": -2.41438,
"neighborhood_zipcode": "76544"
},
{
"address": "1304 Royal Crest Drive",
"city": "Killeen",
"state": "TX",
"zip": "76549",
"beds": 2,
"baths": 2,
"home_type": "Townhouse",
"list_price": 138500,
"neighborhood": "Killeen",
"image_url": "http://lh.rdcpix.com/c436b83e9cc8b04c37b46232ee8619cbl-f1298849870r.jpg",
"sqft": 1140,
"mls_id": "593395",
"days_on_market": 103,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "593395",
"has_pool": "false",
"is_water_front": "false",
"num_of_units": null,
"latitude": 31.1101,
"longitude": -97.7687,
"traditional_ROI": 8.13868,
"airbnb_ROI": -2.41185,
"traditional_rental": 1523,
"airbnb_rental": 372,
"traditional_cap": 8.43249,
"airbnb_cap": -2.49892,
"neighborhood_zipcode": "76544"
},
{
"address": "2410 Royal Crest Circle",
"city": "Killeen",
"state": "TX",
"zip": "76549",
"beds": 2,
"baths": 2,
"home_type": "Townhouse",
"list_price": 139000,
"neighborhood": "Killeen",
"image_url": "http://lh.rdcpix.com/1adf18928ea2e45d86f3bd1234471f27l-f973042482r.jpg",
"sqft": 1122,
"mls_id": "589694",
"days_on_market": 155,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "589694",
"has_pool": "false",
"is_water_front": "false",
"num_of_units": null,
"latitude": 31.112,
"longitude": -97.7669,
"traditional_ROI": 6.97708,
"airbnb_ROI": -2.45694,
"traditional_rental": 1379,
"airbnb_rental": 372,
"traditional_cap": 7.22806,
"airbnb_cap": -2.54532,
"neighborhood_zipcode": "76544"
},
{
"address": "1218 Westway Circle",
"city": "Killeen",
"state": "TX",
"zip": "76549",
"beds": 2,
"baths": 2,
"home_type": "Townhouse",
"list_price": 130000,
"neighborhood": "Killeen",
"image_url": "http://lh.rdcpix.com/4df005bb397e3d1b09563fc920d7dd0dl-f2618233650r.jpg",
"sqft": 1132,
"mls_id": "595923",
"days_on_market": 92,
"last_sale_date": null,
"last_sale_price": null,
"listing_id": "595923",
"has_pool": "false",
"is_water_front": "false",
"num_of_units": null,
"latitude": 31.1107,
"longitude": -97.7683,
"traditional_ROI": 7.80889,
"airbnb_ROI": -2.51852,
"traditional_rental": 1412,
"airbnb_rental": 372,
"traditional_cap": 8.10923,
"airbnb_cap": -2.61538,
"neighborhood_zipcode": "76544"
}
]
}
This endpoint retrieves the top 5 locations (city, zip code, neighborhood, or a street address) MLS listings in the area.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/nearby-listings
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Rental Activity Data
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/rental-activity-data?state=TX&zip_code=76549&resource=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/rental-activity-data?state=TX&zip_code=76549&resource=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/rental-activity-data');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/rental-activity-data?state=TX&zip_code=76549&resource=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"booked": [
{
"count": 54,
"sale_quarter": "quarter_1-90_day",
"book_range": "1-90"
},
{
"count": 11,
"sale_quarter": "quarter_91-180_day",
"book_range": "91-180"
}
],
"available_for_rent": [
{
"count": 9,
"sale_quarter": "quarter_181-270_day",
"unbook_range": "181-270"
},
{
"count": 56,
"sale_quarter": "quarter_272-365_day",
"unbook_range": "271-365"
}
],
"city_insights_fallback": false
}
}
This endpoint retrieves the Airbnb location rental activity performance grouped by booked and unbooked nights.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/rental-activity-data
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Export Comps
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/export-comps?state=TX&zip_code=76549&resource=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/export-comps?state=TX&zip_code=76549&resource=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/export-comps');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/export-comps?state=TX&zip_code=76549&resource=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"status": 100,
"link": "https://storage.googleapis.com/exports.mashvisor.com/devel%2Fe6963f36-8899-4b43-b7dc-fc62ad5fc978.xlsx?GoogleAccessId=cultivated-link-832.mashvisor.com@appspot.gserviceaccount.com&Expires=1769001891&Signature=Y7ZWtEl0WaCws8Zy1px5zYkvsC7I8uHOoRQYCyJRq548Zf3ApvoJdTy6aE9EwsrFhf5weDodBiNaYNS5jj2kI26pckbPziUWHJR0q3O1J0b8iXfRv4VD09hlDTnX1n5jBH%2FWMT8kqncVSLBSN7HPOygeaoxDAJgXH4aKKW1oc04nYPd1GOqGd3oeiDdylDk8jNeCIY4Foed0EO3e4otOHN6dEeNTUKgBCPpZMX56E2y90WVZqvyqNOa8VKCoNNKaWOhQiwCeRJ50qoe1FSVqD4CHUOM49yjqUvMVftKVofKzhylH6NECd8cduvJJDdL7yyVF0fACJ0S4w5GdH7Eo0g%3D%3D"
}
}
This endpoint retrieves the export of all listings used in the analysis for a specific area based on the inputs for the city, zip code, and the neighborhood/street address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/export-comps
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
List Comps
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/list-comps?state=TX&zip_code=76549&resource=airbnb&beds=2")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/list-comps?state=TX&zip_code=76549&resource=airbnb&beds=2")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/list-comps');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/list-comps?state=TX&zip_code=76549&resource=airbnb&beds=2"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"count": 20,
"total_pages": 1,
"page": 1,
"list": [
{
"id": 104987721,
"property_id": "555356268324118145",
"host_id": "334165318",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 122,
"night_price": 104,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 85,
"currency": null,
"num_of_baths": 1.5,
"num_of_rooms": 2,
"occupancy": 20,
"nights_booked": 74,
"rental_income": 641,
"airbnb_neighborhood_id": 5424,
"name": "Luxury townhouse 2Bd/1.5Ba w/Garage near Ft Hood",
"description": "Newly renovated townhouse in contemporary European style. Elegance meets modernity with this awesome fusion of TOP OF THE LINE APPLIANCES, Scandinavian cabinets, electric fireplace and cedar wood accents. Both rooms have very comfortable beds with Ikea medium/firm mattresses, bamboo pillows and luxury Egyptian cotton sheets. Beautiful bathroom with walk-in shower and a relaxing large waterfall shower head. Washer & dryer in laundry room and one car garage. Enjoy this stylish place near Ft. Hood<br /><br /><b>The space</b><br />This space also includes a 400 Mbps internet speed, a designated work space with a desk and a chair.<br />Two televisions in both rooms.<br /><br /><b>Guest access</b><br />5 Minutes from the house to the Bernie Beck gate (TJ Mills Blvd) and 10 minutes to the Clear Creek Main gate.<br />Gas station 7 eleven is right around the corner.<br />Restaurants and coffee shops across the street from the gas station.",
"address": "Killeen, Texas, United States",
"airbnb_city": "Killeen",
"state": "TX",
"capacity_of_people": 6,
"zip": "76549",
"property_type": "Entire townhouse",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,5,8,9,74,139,77,85,86,23,280,89,665,90,27,91,92,476,93,30,94,95,671,96,672,33,34,35,36,100,101,104,44,236,47,51,179,52,308,57,251,510",
"airbnb_neighborhood": null,
"reviews_count": 77,
"reviews": null,
"created_at": "2025-12-10T22:29:05.000Z",
"updated_at": "2025-12-10T22:29:05.000Z",
"last_seen": "2025-11-23T05:08:20.000Z",
"user_id": 334165318,
"num_of_beds": 3,
"lat": 31.1127,
"lon": -97.7673,
"image": "https://a0.muscache.com/im/pictures/miso/Hosting-555356268324118145/original/4e98eb8b-5a10-4743-b459-e7501f6b4c1b.jpeg?im_w=720&width=720&quality=70&auto=webp",
"url": "https://airbnb.com/rooms/555356268324118145",
"airbnb_listing_id": "555356268324118145",
"listing_name": "Luxury townhouse 2Bd/1.5Ba w/Garage near Ft Hood",
"star_rating": 4.82,
"neighborhood_name": "Killeen"
},
{
"id": 104987692,
"property_id": "45525126",
"host_id": "368489231",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 100,
"night_price": 74,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 75,
"currency": null,
"num_of_baths": 1,
"num_of_rooms": 2,
"occupancy": 13,
"nights_booked": 49,
"rental_income": 302,
"airbnb_neighborhood_id": 5424,
"name": "2 BR Apt #4, 2min to Fort Hood",
"description": "VERY CLOSE TO THE HIGHWAY AND NOT DEEP IN A NEIGHBORHOOD. Enjoy your stay in our spacious and newly renovated 2 Bedroom, 1 bath. Whether it's for business or pleasure, we know you will find your stay with us equally accommodating and relaxing. Only minutes away are Fort Hood, HEB, and Walmart along with many other necessities and restaurants.<br /><br /><b>The space</b><br />Sit outside on the patio, enjoy a bottle of wine-compliments of your host, kick back and enjoy your favorite streaming service, enjoy a home cooked meal in the kitchen with ample cooking gear and get a good nights sleep in one of the comfy Queen beds.",
"address": "Killeen, Texas, United States",
"airbnb_city": "Killeen",
"state": "TX",
"capacity_of_people": 4,
"zip": "76549",
"property_type": "Apartment",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,5,8,9,77,89,90,91,92,93,30,94,95,96,35,100,101,40,41,44,46,51,53,57",
"airbnb_neighborhood": null,
"reviews_count": 74,
"reviews": null,
"created_at": "2025-12-10T22:29:03.000Z",
"updated_at": "2025-12-10T22:29:03.000Z",
"last_seen": "2025-11-23T05:08:20.000Z",
"user_id": 368489231,
"num_of_beds": 2,
"lat": 31.1085,
"lon": -97.7627,
"image": "https://a0.muscache.com/im/pictures/100971e3-f806-4dc5-b58d-9569b913064e.jpg?im_w=720&width=720&quality=70&auto=webp",
"url": "https://airbnb.com/rooms/45525126",
"airbnb_listing_id": "45525126",
"listing_name": "2 BR Apt #4, 2min to Fort Hood",
"star_rating": 4.7,
"neighborhood_name": "Killeen"
},
{
"id": 104987745,
"property_id": "756701904404372081",
"host_id": "220074179",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 112,
"night_price": 90,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 95,
"currency": null,
"num_of_baths": 1.5,
"num_of_rooms": 2,
"occupancy": 16,
"nights_booked": 60,
"rental_income": 450,
"airbnb_neighborhood_id": 5424,
"name": "2 bedroom 1.5 bath, King Bed, Desk, Wi-Fi, Parking",
"description": "Introducing our 2-bedroom, 1.5-bathroom apartment – ideal for both brief getaways and extended stays. Prepare for an exceptionally comfortable and stylish experience that will leave you feeling truly exceptional. <br /><br />Whether you seek a relaxing escape or a unique and memorable occasion, this presents an excellent opportunity to indulge in delightful moments and create lasting memories. Don't let this remarkable destination slip through your fingers!<br /><br /><b>The space</b><br />Discover the ultimate vacation destination in Killeen with this stylish 2BR 1.5 Bath townhouse located in the peaceful and welcoming Deek Drive neighborhood. Whether you're visiting for work or pleasure, this centrally-located property offers the perfect base for exploring all that the city has to offer. Enjoy a relaxing retreat close to Fort Hood, major hospitals, top employers, delicious restaurants, trendy shops, and exciting attractions. Inside, the townhouse boasts a modern and tasteful design that will make you feel right at home. With all the amenities you need to feel comfortable and the location to make your stay enjoyable, this townhouse is the perfect choice for your next trip to Killeen. Book your stay today and experience the best of this vibrant city!<br /><br /><b>Guest access</b><br />To access the apartment, enter the last 4 digits of your phone number then select the enter or check mark at the bottom left of the keypad. Once inside the apartment, be sure to lock the door behind you.",
"address": "Killeen, Texas, United States",
"airbnb_city": "Killeen",
"state": "TX",
"capacity_of_people": 4,
"zip": "76549",
"property_type": "Apartment",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,5,8,392,9,137,394,139,657,23,665,30,415,671,672,33,34,35,36,37,39,40,41,42,44,45,46,47,51,52,308,57,315,61,62,71,77,79,85,86,89,90,91,92,93,94,95,96,611,100,101,104,236,625,114,251",
"airbnb_neighborhood": null,
"reviews_count": 63,
"reviews": null,
"created_at": "2025-12-10T22:29:07.000Z",
"updated_at": "2025-12-10T22:29:07.000Z",
"last_seen": "2025-10-19T11:56:10.000Z",
"user_id": 220074179,
"num_of_beds": 2,
"lat": 31.0904,
"lon": -97.7889,
"image": "https://a0.muscache.com/pictures/miso/Hosting-756701904404372081/original/3b066262-34cd-4bf9-ad73-8d181dd13f65.jpeg",
"url": "https://airbnb.com/rooms/756701904404372081",
"airbnb_listing_id": "756701904404372081",
"listing_name": "2 bedroom 1.5 bath, King Bed, Desk, Wi-Fi, Parking",
"star_rating": 4.88,
"neighborhood_name": "Killeen"
},
...
]
}
}
This endpoint retrieves the list of all listings used in the analysis for a specific area based on the inputs for the city, zip code, and the neighborhood/street address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/list-comps
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id | |
| page | Integer | 1 | Page number |
Historical Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/historical-performance?city=Miami&state=fl&neighborhood_id=269093&resource=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/historical-performance?city=Miami&state=fl&neighborhood_id=269093&resource=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/historical-performance');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb',
'beds' => '2',
'baths' => '2'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/historical-performance?city=Miami&state=fl&neighborhood_id=269093&resource=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"rental_income_yoy_changes": -45.0916106125674,
"night_price_yoy_changes": 12.172566371681423,
"occupancy_yoy_changes": -66.19814878299623,
"historical_performance": [
{
"rental_income": 1029.0096153846155,
"night_price": 232.175,
"occupancy": 9.48076923076923,
"month": 1,
"year": 2026,
"date": "1-2026"
},
{
"rental_income": 545.9615384615385,
"night_price": 228.875,
"occupancy": 9.481927710843374,
"month": 12,
"year": 2025,
"date": "12-2025"
},
{
"rental_income": 554.1442307692307,
"night_price": 230.359375,
"occupancy": 8.108433734939759,
"month": 11,
"year": 2025,
"date": "11-2025"
},
{
"rental_income": 595.8846153846154,
"night_price": 228.86111111111111,
"occupancy": 11.655913978494624,
"month": 10,
"year": 2025,
"date": "10-2025"
},
{
"rental_income": 435.7980769230769,
"night_price": 221.9041095890411,
"occupancy": 7.957446808510638,
"month": 9,
"year": 2025,
"date": "9-2025"
},
{
"rental_income": 1221,
"night_price": 222.09333333333333,
"occupancy": 21.697916666666668,
"month": 8,
"year": 2025,
"date": "8-2025"
},
{
"rental_income": 1939.3365384615386,
"night_price": 231.7605633802817,
"occupancy": 23.40625,
"month": 7,
"year": 2025,
"date": "7-2025"
},
{
"rental_income": 2911.980769230769,
"night_price": 247.74747474747474,
"occupancy": 18.259615384615383,
"month": 6,
"year": 2025,
"date": "6-2025"
},
{
"rental_income": 4089.298076923077,
"night_price": 242.44444444444446,
"occupancy": 31.817307692307693,
"month": 5,
"year": 2025,
"date": "5-2025"
},
{
"rental_income": 4437.548076923077,
"night_price": 226.25742574257427,
"occupancy": 40.52884615384615,
"month": 4,
"year": 2025,
"date": "4-2025"
},
{
"rental_income": 2765.346153846154,
"night_price": 218.2970297029703,
"occupancy": 31.23076923076923,
"month": 3,
"year": 2025,
"date": "3-2025"
},
{
"rental_income": 1874.048076923077,
"night_price": 206.98019801980197,
"occupancy": 28.048076923076923,
"month": 2,
"year": 2025,
"date": "2-2025"
}
]
}
}
This endpoint retrieves the historical performance of all listings used in the analysis for a specific area based on the inputs for the city, zip code, and the neighborhood/street address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/historical-performance
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id | |
| limit_recent_months | Boolean | true | Set it to false if you want to see more than 12 months back |
Property Types
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/property-types?state=TX&zip_code=76549&resource=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/property-types?state=TX&zip_code=76549&resource=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/property-types');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/property-types?state=TX&zip_code=76549&resource=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": [
{
"property_type": "House",
"count": 42,
"min": 0,
"max": 1684,
"avg": 677.1666666666666,
"median": 634,
"adjusted_rental_income": 594.3416666666669,
"median_night_rate": 142,
"median_occupancy": 15
},
{
"property_type": "Apartment",
"count": 14,
"min": 181,
"max": 933,
"avg": 530.3571428571429,
"median": 516,
"adjusted_rental_income": 539.186111111111,
"median_night_rate": 91,
"median_occupancy": 19
},
{
"property_type": "Entire townhouse",
"count": 7,
"min": 208,
"max": 860,
"avg": 508.7142857142857,
"median": 443,
"adjusted_rental_income": 345.3305555555554,
"median_night_rate": 119,
"median_occupancy": 11
},
{
"property_type": "Condominium",
"count": 2,
"min": 278,
"max": 436,
"avg": 357,
"median": 357,
"adjusted_rental_income": 304.06527777777785,
"median_night_rate": 119,
"median_occupancy": 10
}
]
}
This endpoint retrieves the search for property types and their key metrics for a specific area based on the inputs for the city, zip code, and the neighborhood/street address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/property-types
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Revenue Stats
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/rento-calculator/revenue-stats?state=TX&zip_code=76549&resource=airbnb")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/rento-calculator/revenue-stats?state=TX&zip_code=76549&resource=airbnb")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/rento-calculator/revenue-stats');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'TX',
'zip_code' => '76549',
'source' => 'airbnb'));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/rento-calculator/revenue-stats?state=TX&zip_code=76549&resource=airbnb"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"count": 63,
"rental_income": {
"adjusted_rental_income": 544.351875,
"median": 581,
"min": 36,
"max": 1684,
"avg": 636.7619047619048,
"percentile_20": 287.6,
"percentile_10": 190.4,
"percentile_5": 175.6,
"percentile_80": 878.6,
"percentile_90": 1200.8000000000004,
"percentile_95": 1463.3
},
"occupancy_rate": {
"median": 15,
"min": 1,
"max": 47,
"avg": 16.650793650793652,
"percentile_20": 8,
"percentile_10": 5.2,
"percentile_5": 3.1,
"percentile_80": 24.6,
"percentile_90": 29.60000000000001,
"percentile_95": 31.9
},
"daily_rate": {
"median": 123,
"min": 54,
"max": 327,
"avg": 131.88888888888889,
"percentile_20": 97.8,
"percentile_10": 83.4,
"percentile_5": 75.4,
"percentile_80": 157.2,
"percentile_90": 168.8,
"percentile_95": 197.9
},
"median_night_rate": 123
}
}
This endpoint retrieves the count of properties, revenue, and occupancy statistics for a specific area based on the inputs for the city, zip code, and the neighborhood/street address.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/rento-calculator/revenue-stats
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state | String | The state of the neighborhood should be provided to the api or api will throw error 404. | |
| city | String | A specific city you're looking for. | |
| zip_code | String | Any postal zip code. | |
| address | String | Any street address | |
| lat | Float | Latitude value | |
| lng | Float | Longitude value | |
| beds | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| baths | Integer | Possible inputs: * 0 * 1 * 2 * 3 * 4 * 5 |
|
| home_type | String | Possible inputs: * single family residential * condo/coop * townhouse * multi family * other |
|
| resource | String | Default "airbnb" Possible inputs: * airbnb * traditional |
|
| neighborhood_id | String | Any Neighborhood Id |
Predictive Scores
Investment Likelihood
Sample Request
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{"airbnb_ROI":9.33728,"airbnb_rental":3235.36,"traditional_ROI":1.92281,"traditional_rental":1270,"baths":10,"beds":10,"days_on_market":152,"home_type":"Multi Family","list_price":599000,"sqft":2000}');
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/ml/investment-likelihood")
.post(body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/ml/investment-likelihood")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
request["Postman-Token"] = 'd84dcf05-a554-48d1-a7c4-a675b624dfb3'
request.body = '{"airbnb_ROI":9.33728,"airbnb_rental":3235.36,"traditional_ROI":1.92281,"traditional_rental":1270,"baths":10,"beds":10,"days_on_market":152,"home_type":"Multi Family","list_price":599000,"sqft":2000}'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/ml/investment-likelihood');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders(array(
'Content-Type' => 'application/json'
));
$request->setBody('{"airbnb_ROI":9.33728,"airbnb_rental":3235.36,"traditional_ROI":1.92281,"traditional_rental":1270,"baths":10,"beds":10,"days_on_market":152,"home_type":"Multi Family","list_price":599000,"sqft":2000}');
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/ml/investment-likelihood"
payload := strings.NewReader('{"airbnb_ROI":9.33728,"airbnb_rental":3235.36,"traditional_ROI":1.92281,"traditional_rental":1270,"baths":10,"beds":10,"days_on_market":152,"home_type":"Multi Family","list_price":599000,"sqft":2000}')
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"contact": {
"prediction": {
"Value": 1
},
"prediction_likelihood": {
"Value": 67.31213123
}
}
},
"message": "prediction_likelihood succeeded"
}
“Property Finder” is the functionality supported by the Investment Likelihood machine learning model, predicting the investment feasibility score for each MLS listing. Users can search for up to 5 areas concurrently for potential investments.
The model has achieved over 86% of accuracy score and is being optimized on an ongoing basis, using enriched data sets and enhanced methodology.
HTTP Request
POST https://api.mashvisor.com/v1.1/client/ml/investment-likelihood
HTTP Headers
| Header | Value | Default |
|---|---|---|
| Content-Type | application/json | |
| x-api-key | User Authentication Header |
Body Parameters
| Parameter | Value | Required | Description |
|---|---|---|---|
| airbnb_ROI | Double | YES | Airbnb cash on cash (rent over investment) |
| airbnb_rental | Double | YES | Airbnb monthly rental income |
| traditional_ROI | Double | YES | Airbnb cash on cash (rent over investment) |
| traditional_rental | Double | YES | Traditional monthly rental income |
| baths | Integer | YES | Property bathrooms |
| beds | Integer | YES | Property bedrooms |
| days_on_market | Integer | NO Replace it with 0 with when missed |
How many days the listing has been active on market |
| home_type | String | YES | Property home type Possible input: * Condo/Coop * Multi Family * Other * Single Family Residential * Townhouse |
| list_price | Integer | NO Replace it with 0 with when missed |
Property list price |
| sqft | Integer | NO Replace it with 0 with when missed |
Property sqft value |
Mashmeter
Sample Request
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{"airbnb_listings":1104,"median_airbnb_coc":6.60582,"airbnb_price_to_rent_ratio":27.884447053896,"traditional_listings":7,"median_traditional_coc":0.7074975,"traditional_price_to_rent_ratio":28.650655961001,"walkscore":55}');
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/ml/mashmeter")
.post(body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/ml/mashmeter")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
request["Postman-Token"] = 'd84dcf05-a554-48d1-a7c4-a675b624dfb3'
request.body = '{"airbnb_listings":1104,"median_airbnb_coc":6.60582,"airbnb_price_to_rent_ratio":27.884447053896,"traditional_listings":7,"median_traditional_coc":0.7074975,"traditional_price_to_rent_ratio":28.650655961001,"walkscore":55}'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/ml/mashmeter');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders(array(
'Content-Type' => 'application/json'
));
$request->setBody('{"airbnb_listings":1104,"median_airbnb_coc":6.60582,"airbnb_price_to_rent_ratio":27.884447053896,"traditional_listings":7,"median_traditional_coc":0.7074975,"traditional_price_to_rent_ratio":28.650655961001,"walkscore":55}');
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/ml/mashmeter"
payload := strings.NewReader('{"airbnb_listings":1104,"median_airbnb_coc":6.60582,"airbnb_price_to_rent_ratio":27.884447053896,"traditional_listings":7,"median_traditional_coc":0.7074975,"traditional_price_to_rent_ratio":28.650655961001,"walkscore":55}')
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"traditional_mashmeter": "75.09",
"airbnb_mashmeter": "67.79",
"traditional_weight": "0.46",
"airbnb_weight": "2.52",
"strategy": "Airbnb",
"mashmeter": "67.79"
},
"message": "Mashmeter values fetched successfully"
}
Mashmeter is a blended dynamic model utilizing real-time data with an output showing a low to high propensity for investment property returns, combined with a specific market investment opportunity.
HTTP Request
POST https://api.mashvisor.com/v1.1/client/ml/mashmeter
HTTP Headers
| Header | Value | Default |
|---|---|---|
| Content-Type | application/json | |
| x-api-key | User Authentication Header |
Body Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| airbnb_listings | Integer | Number of properties listed for sale in a given neighbourhood | |
| median_airbnb_coc | Double | Median Airbnb cash on cash (rent over investment) for a neighborhood | |
| airbnb_price_to_rent_ratio | Double | Airbnb price to rent ratio | |
| traditional_listings | Integer | Number of properties listed on Airbnb in a given neighbourhood | |
| median_traditional_coc | Double | Median traditional cash on cash (rent over investment) for a neighborhood | |
| traditional_price_to_rent_ratio | Double | Traditional price to rent ratio | |
| walkscore | Integer | Neighborhood Walkscore value |
Property Recommender
Sample Request
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{"AgeRange":"45-54","WealthScore":"50.0","Gender":"Female","EstimatedHouseholdIncome":"> $250,000","PresenceOfChildren":"YES","NumberOfChildren":"1","MaritalStatusInHousehold":"Single","Investing":"YES","EstWealth":"> $499,999","NumberCreditLines":"1","LengthOfResidence":"11 - 15 years","Sale1 Transfer Amt":"590000.0","BusinessOwner":"UNKNOWN"}');
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/ml/recommended_property")
.post(body)
.addHeader("Content-Type", "application/json")
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/ml/recommended_property")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
request["Postman-Token"] = 'd84dcf05-a554-48d1-a7c4-a675b624dfb3'
request.body = '{"AgeRange":"45-54","WealthScore":"50.0","Gender":"Female","EstimatedHouseholdIncome":"> $250,000","PresenceOfChildren":"YES","NumberOfChildren":"1","MaritalStatusInHousehold":"Single","Investing":"YES","EstWealth":"> $499,999","NumberCreditLines":"1","LengthOfResidence":"11 - 15 years","Sale1 Transfer Amt":"590000.0","BusinessOwner":"UNKNOWN"}'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/ml/recommended_property');
$request->setMethod(HTTP_METH_POST);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY',
'Content-Type' => 'application/json'
));
$request->setBody('{"AgeRange":"45-54","WealthScore":"50.0","Gender":"Female","EstimatedHouseholdIncome":"> $250,000","PresenceOfChildren":"YES","NumberOfChildren":"1","MaritalStatusInHousehold":"Single","Investing":"YES","EstWealth":"> $499,999","NumberCreditLines":"1","LengthOfResidence":"11 - 15 years","Sale1 Transfer Amt":"590000.0","BusinessOwner":"UNKNOWN"}');
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/ml/recommended_property"
payload := strings.NewReader('{"AgeRange":"45-54","WealthScore":"50.0","Gender":"Female","EstimatedHouseholdIncome":"> $250,000","PresenceOfChildren":"YES","NumberOfChildren":"1","MaritalStatusInHousehold":"Single","Investing":"YES","EstWealth":"> $499,999","NumberCreditLines":"1","LengthOfResidence":"11 - 15 years","Sale1 Transfer Amt":"590000.0","BusinessOwner":"UNKNOWN"}')
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"property_type": {
"Condo/Coop": 69
},
"bedrooms": {
"1": 95
},
"bathrooms": {
"['1', '2']": 57.4
},
"home_value": {
"> $1,000,000": 71.5
}
}
}
The API returns a JSON object with data representing specifications for recommended properties based on an input consisting of demographics and other data. The returned data includes property type, number of beds/baths, and the home value.
HTTP Request
POST https://api.mashvisor.com/v1.1/client/ml/recommended_property
HTTP Headers
| Header | Value | Default |
|---|---|---|
| Content-Type | application/json | |
| x-api-key | User Authentication Header |
Body Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| AgeRange | String | Person age range Possbile Inputs: * '18-24' * '25-34' * '35-44' * '45-54' * '55-64' * '65-74' * '75+' * 'UNKNOWN' |
|
| WealthScore | Integer | Any from 0 to 100 Or 'UNKNOWN' |
|
| Gender | String | Possbile Inputs: * Male * Female * UNKNOWN |
|
| EstimatedHouseholdIncome | String | Possbile Inputs: * '< $20,000' * '$10,000-49,999' * '$50,000-99,999' * '$100,000-149,999' * '$150,000-199,999' * '$200,000-249,999' * $250,000' *'UNKNOWN' |
|
| PresenceOfChildren | String | Possbile Inputs: * 'YES' * UNKNOWN |
|
| NumberOfChildren | String | Any positive integer number If missing, value should be sent as -1 |
|
| MaritalStatusInHousehold | String | Possbile Inputs: * Married * Signle * UNKNOWN |
|
| Investing | String | Possbile Inputs: * 'YES' * UNKNOWN |
|
| EstWealth | String | Possbile Inputs: * '< $1' *'$1-4,999' *'$5,000-9,999' *'$10,000-24,999' *'$25,000-49,999' *'$50,000-99,999' *'$100,000-249,999' *'$250,000-499,999' *'>$499,999' *'UNKNOWN' |
|
| NumberCreditLines | String | Any positive integer number | |
| LengthOfResidence | String | Possbile Inputs: * '1 - 4 year' * '11 - 15 years' * '5 - 10 years' * UNKNOWN |
|
| Sale1 Transfer Amt | String | Any positive number | |
| BusinessOwner | String | Possbile Inputs: * Accountant * 'Contractor' * 'Owner','Partner' *'Person Owns a Business' * Self Employed' * 'UNKNOWN' |
Short Term Rentals
Mashvisor provides data and analysis for different short-term rental services, including AirBnB, HomeAway, and VRBO.
Mashvisor has one of the largest databases (over 2.5M+ records) of historical short-term rental data with detailed property information, reviews, photos, host information, and a yearly calendar of daily booking availability and booking price per night.
Our short-term occupancy calculator is supported by an algorithm calculating the occupancy rate for each listing based on the properties’ historical performance and available future bookings. Our algorithms can differentiate between booked and blocked days, and estimate monthly rental income for future bookings.
We have established a validation process for occupancy rates calculations with verified Airbnb hosts to ensure higher accuracy and certify our data.
Get Airbnb Listing Info
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/22518616")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/property/22518616?state=AZ")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/22518616');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'AZ'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/property/22518616?state=AZ"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"id": "22518616",
"city": "Tempe",
"picture_url": "https://a0.muscache.com/4ea/air/v2//pictures/81b62204-5602-49e9-83af-baf5a2477dcb.jpg?t=r:w1200-h720-sfit,e:fjpg-c85",
"thumbnail_url": "https://a0.muscache.com/im/pictures/81b62204-5602-49e9-83af-baf5a2477dcb.jpg?aki_policy=small",
"medium_url": "https://a0.muscache.com/im/pictures/81b62204-5602-49e9-83af-baf5a2477dcb.jpg?aki_policy=medium",
"xl_picture_url": "https://a0.muscache.com/im/pictures/81b62204-5602-49e9-83af-baf5a2477dcb.jpg?aki_policy=x_large",
"user_id": 2158239,
"price": 134,
"native_currency": "USD",
"price_native": 134,
"price_formatted": "$134",
"lat": 33.44431,
"lng": -111.92187,
"country": "United States",
"name": "Community Pool - Three Story Home with Two Balconies.",
"smart_location": "Tempe, AZ",
"has_double_blind_reviews": false,
"instant_bookable": false,
"bedrooms": 4,
"beds": 5,
"bathrooms": 3.5,
"market": "Phoenix",
"min_nights": 2,
"neighborhood": null,
"person_capacity": 9,
"state": "AZ",
"zipcode": "85281",
"address": "Tempe, AZ, United States",
"country_code": "US",
"cancellation_policy": "moderate",
"property_type": "House",
"reviews_count": 97,
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"picture_count": 42,
"currency_symbol_left": "$",
"currency_symbol_right": null,
"bed_type": "Real Bed",
"bed_type_category": "real_bed",
"require_guest_profile_picture": false,
"require_guest_phone_verification": false,
"force_mobile_legal_modal": false,
"cancel_policy": 4,
"check_in_time": 15,
"check_out_time": 10,
"guests_included": 4,
"license": null,
"max_nights": 1125,
"square_feet": null,
"locale": "en",
"has_viewed_terms": null,
"has_viewed_cleaning": null,
"has_agreed_to_legal_terms": null,
"has_viewed_ib_perf_dashboard_panel": null,
"language": "en",
"public_address": "Tempe, AZ, United States",
"map_image_url": "https://maps.googleapis.com/maps/api/staticmap?maptype=roadmap&markers=33.44431%2C-111.92187&size=480x320&zoom=15&client=gme-airbnbinc&channel=monorail-prod&signature=7dUWsaAPDy3FOP1bZTg7eYRLj0o%3D",
"experiences_offered": "none",
"max_nights_input_value": 1125,
"min_nights_input_value": 2,
"requires_license": false,
"property_type_id": 2,
"house_rules": "--NOISE--\nPlease keep your volume down if you are playing music especially using the stereo system (Yes even during the day).\nPlease keep your volume down when you talk on the rooftop as the sound travels.\nAny loud noise during the quite hours between 10pm and 8am may result in complaints and fines.\n--PARTY--\nPlease DO NOT host any party in the house except pre-approved small gatherings (with low noise level). \nOnly the guests on the booking request allowed to stay overnight. There will be fees for extra guests staying.\n--PARKING--\nPlease do not park in front of the garage door as it will block the neighbor's pathway.\nPlease do not park anywhere that has NO PARKING or red curb.\n--SMOKING--\nSmoking is prohibited anywhere in the house. Fees will be charged if the cleaning company find any signs of cigarette and smoke. \n--PETS--\nNo pets allowed in the house. Fines will be applied for any violation. \n--CLEANING--\nExtra cleaning charge will be reported to Airbnb if the house needs extensive cleaning efforts (longer than 3 hours: $55/hour)\n--CHECKOUT--\nCheckout time is 10am. If you check out later that 10am there will be an extra charge of $50 (Please contact your host to confirm the availability)\n\nThank you for treating your house as your own home and taking consideration of the neighbors!",
"security_deposit_native": 200,
"security_price_native": 200,
"security_deposit_formatted": "$200",
"description": "COVID19 Responding Action: We are blocking off 72 between each stay to ensure the safety for our guests. We also hired a professional third party cleaning company to perform the cleaning for each stay. \nThe community pool is open for use. \n--------------\nBask in the sun on one of the two lovely balconies, or socialize at the pool, at this dreamy desert getaway. Utilize the comfy bedrooms on all three floors, cook a gourmet meal in the high-end kitchen and watch TV on the giant projection screen.\n\nMaster Bedroom: King Bed | Bedroom 2: Queen Bed | Bedroom 3: Queen Bed, Twin Trundle Bed | Bedroom 4 (1st floor): Queen Sleeper Sofa \n\nNestled in the pristine Newport community, this spacious home is designed to impress with modern elegance and comfortable furnishings. \n\nJust steps from your home-away-from-home is the shared outdoor pool and spa. Dive into relaxation in this pristine body of water or enjoy a soothing soak in the jacuzzi for optimal holiday relaxation. \n\nWhen you're not lounging poolside, unwind in the living area, featuring plush sofas, a stereo, smart home system, and a Smart TV with cable channels and a large projector screen. \n\nYou'll want to put your culinary skills to the test in the high-end kitchen, adorned with stainless steel appliances, sleek countertops, a breakfast bar, and a farmhouse sink. Enjoy your home-cooked cuisine at the 2-person breakfast bar or at the dining room table with seating for 6. \n\nFor a front-row seat to colorful Arizona sunsets, retreat upstairs to the private rooftop patio, with seating for 2 and picturesque Tempe views. The property also features a second-floor balcony - the perfect place to jumpstart your day with a cup of coffee or end it with an evening nightcap.\n\nRetire to the well-appointed master bedroom, offering a king-sized bed and an en-suite bathroom with a large shower and bathtub. Sleep will come easy in Bedrooms 2 and 3, boasting high-quality memory foam queen mattresses. Additional sleeping can be found in the downstairs 4th bedroom with high-end foam mattress queen-sized sleeper sofa.\n\nGuest has access to the whole house. Just make it your own home in the dessert.\n\nKeyless entry and self check in is available. Instruction will be sent to you after booking.\n\nVisit boutiques, museums, galleries, live theatre, gourmet fare and more in these lively cities, or head out into nature for more adventure. Downtown Tempe is just a stone's throw away, and Old Scottsdale is only 15 minutes away.\n\nRental car is highly recommended. Although uber/Lyft are also very convenient to use in town. There’s also free flash to go to ASU and downtown. \nWe have two bikes you can use for free.\n\nKey Residence Features:\n- Amenities include a fully equipped kitchen with stainless steel appliances, free WiFi, flat-screen cable TV, Smart TV with cable channels and projector screen, Amazon Echo Dots and smart AC control, private rooftop patio, second-floor balcony, access to resort pool and spa, 2 cruiser bikes, and much more! \n- Prime Tempe location just 4 minutes from downtown, 8 minutes to Old Town Scottsdale, a 5-minute drive to Arizona State University, and 15 minutes to downtown Phoenix!\n\nAdditional Information: \n- Please note that the trash is picked up on Monday mornings. It will need to be pulled to the front of the community on Sunday night and returned to the unit the next day\n\n- Please note that recycling is picked up on Thursday mornings. It will need to be pulled to the front of the community on Wednesday night, and returned to the unit the next day\n\n- During weekdays and some weekends there maybe construction noises in the morning",
"description_locale": "en",
"summary": "COVID19 Responding Action: We are blocking off 72 between each stay to ensure the safety for our guests. We also hired a professional third party cleaning company to perform the cleaning for each stay. \nThe community pool is open for use. \n--------------\nBask in the sun on one of the two lovely balconies, or socialize at the pool, at this dreamy desert getaway. Utilize the comfy bedrooms on all three floors, cook a gourmet meal in the high-end kitchen and watch TV on the giant projection screen.",
"space": "Master Bedroom: King Bed | Bedroom 2: Queen Bed | Bedroom 3: Queen Bed, Twin Trundle Bed | Bedroom 4 (1st floor): Queen Sleeper Sofa \n\nNestled in the pristine Newport community, this spacious home is designed to impress with modern elegance and comfortable furnishings. \n\nJust steps from your home-away-from-home is the shared outdoor pool and spa. Dive into relaxation in this pristine body of water or enjoy a soothing soak in the jacuzzi for optimal holiday relaxation. \n\nWhen you're not lounging poolside, unwind in the living area, featuring plush sofas, a stereo, smart home system, and a Smart TV with cable channels and a large projector screen. \n\nYou'll want to put your culinary skills to the test in the high-end kitchen, adorned with stainless steel appliances, sleek countertops, a breakfast bar, and a farmhouse sink. Enjoy your home-cooked cuisine at the 2-person breakfast bar or at the dining room table with seating for 6. \n\nFor a front-row seat to colorful Arizona sunsets, retreat upstairs to the private rooftop patio, with seating for 2 and picturesque Tempe views. The property also features a second-floor balcony - the perfect place to jumpstart your day with a cup of coffee or end it with an evening nightcap.\n\nRetire to the well-appointed master bedroom, offering a king-sized bed and an en-suite bathroom with a large shower and bathtub. Sleep will come easy in Bedrooms 2 and 3, boasting high-quality memory foam queen mattresses. Additional sleeping can be found in the downstairs 4th bedroom with high-end foam mattress queen-sized sleeper sofa.",
"access": "Guest has access to the whole house. Just make it your own home in the dessert.",
"interaction": "Keyless entry and self check in is available. Instruction will be sent to you after booking.",
"neighborhood_overview": "Visit boutiques, museums, galleries, live theatre, gourmet fare and more in these lively cities, or head out into nature for more adventure. Downtown Tempe is just a stone's throw away, and Old Scottsdale is only 15 minutes away.",
"transit": "Rental car is highly recommended. Although uber/Lyft are also very convenient to use in town. There’s also free flash to go to ASU and downtown. \nWe have two bikes you can use for free.",
"amenities": [
"TV",
"Cable TV",
"Wifi",
"Air conditioning",
"Pool",
"Kitchen",
"Free parking on premises",
"Free street parking",
"Hot tub",
"Indoor fireplace",
"Heating",
"Washer",
"Dryer",
"Smoke alarm",
"Carbon monoxide alarm",
"Essentials",
"Shampoo",
"Hangers",
"Hair dryer",
"Iron",
"Laptop-friendly workspace",
"Self check-in",
"Keypad",
"Bathtub",
"Room-darkening shades",
"Body soap",
"Bath towel",
"Toilet paper",
"Bed linens",
"Extra pillows and blankets",
"Microwave",
"Coffee maker",
"Refrigerator",
"Dishwasher",
"Dishes and silverware",
"Cooking basics",
"Oven",
"Stove",
"BBQ grill",
"Patio or balcony",
"Long term stays allowed",
"Handheld shower head",
"Hot water kettle",
"Central air conditioning",
"Smart TV",
"Mountain view",
"Rain shower",
"Balcony",
"Sound system",
"Gas oven",
"Projector and screen",
"Breakfast table",
"Espresso machine",
"Formal dining area",
"Sun loungers",
"Day bed",
"Shared pool",
"Shared hot tub",
"Convection oven",
"Amazon Echo",
"Memory foam mattress",
"En suite bathroom",
"Outdoor seating",
"Soaking tub",
"Walk-in shower",
"Full kitchen",
"Bedroom comforts",
"Bathroom essentials"
],
"is_location_exact": true,
"cancel_policy_short_str": "Moderate",
"star_rating": null,
"price_for_extra_person_native": 15,
"weekly_price_native": null,
"monthly_price_native": null,
"time_zone_name": "America/Phoenix",
"loc": {
"type": "Point",
"coordinates": [
-111.92187,
33.44431
]
},
"exists": false,
"created_at": "2018-04-05T23:17:26.415Z",
"updated_at": "2021-06-12T08:55:24.570Z",
"cleaning_fee_native": 280,
"extras_price_native": 280,
"in_building": false,
"in_toto_area": false,
"instant_book_enabled": true,
"is_business_travel_ready": null,
"listing_cleaning_fee_native": 280,
"listing_monthly_price_native": null,
"listing_price_for_extra_person_native": 15,
"listing_weekend_price_native": 295,
"listing_weekly_price_native": null,
"localized_city": "Tempe",
"monthly_price_factor": 0.9,
"special_offer": null,
"toto_opt_in": null,
"weekly_price_factor": 0.95,
"wireless_info": null,
"host_id": 2158239,
"airbnb_id": "22518616",
"mashvisor_id": null,
"occupancy": null,
"rental_income": null,
"nights_booked": null
}
}
Fetches a full snapshot of any Airbnb listing—covering host profile, guest reviews, photos, occupancy rate, and income projections—to help evaluate performance and investment potential.
Airbnb Property Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| id | Airbnb listing ID: 9998508 | Integer |
| name | Listing full name | String |
| neighborhood | Listing neighborhood | Boolean |
| city | The city where the listing is located | String |
| state* | The state where the property is located | String |
| zip code | Postal code where a listing is located | Integer |
| country | County where a listing is located | String |
| smart_location | Full location of listing | String |
| address | Address of listing entered by host | String |
| public_address | Full address along with the country | String |
| country_code | Listing’s country code, ex: US | String |
| market | Listing market | String |
| lat | Latitude of listing location | Float |
| lng | Longitude of listing location | Float |
| instant_bookable | Indicator if listing is available for instant booking | Boolean |
| picture_url | Main picture url | String |
| thumbnail_url | Main thumbnail picture url | String |
| medium_url | Main XL picture url | String |
| xl_picture_url | All XL pictures urls. | String |
| picture_urls | All pictures url | String - array |
| thumbnail_urls | All thumbnail pictures url | String - array |
| xl_picture_urls | All XL pictures urls. | String - array |
| picture_count | Count of all pictures | Integer |
| picture_captions | All pictures captions | String - array |
| map_image_url | Google map image url | String |
| user_id | Listing’s host ID | Integer |
| price | Listing current booking price per night | Integer |
| native_currency | Natiec price currency, ex: “USD” | String |
| price_native | Listing nartive price | Integer |
| price_formatted | Price along with the currency | String |
| price_for_extra_person_native | Extra person’s price | Integer |
| weekly_price_native | Weekly price after the discount | Integer |
| monthly_price_native | Monthly price after the discount | Integer |
| currency_symbol_left | Currency symbol, ex: “$” | String |
| currency_symbol_right | Currency symbol, ex: “€” | String |
| security_deposit_native | Security deposit price | Integer |
| security_price_native | Security deposit native price | Integer |
| security_deposit_formatted | Security deposit price with currency | String |
| bedrooms | Number of bedrooms | Integer |
| beds | Number of beds | Integer |
| bathrooms | Number of bathrooms | Integer |
| min_nights | Min allowed booking nights | Integer |
| person_capacity | Max listing capacity of persons | Integer |
| user | The time of the open house starting | User Object |
| cancellation_policy | Cancellation policy category | String |
| cancel_policy | Cancellation policy category ID | Integer |
| cancel_policy_short_str | Summary of cancellation policy | String |
| has_double_blind_reviews | Boolean indicator for blind reviews | Boolean |
| property_type | Property main type | String Available types: * House * Apartment * Bed and breakfast * Boutique hotel * More information * Bungalow * Cabin * Chalet * Cottage * Guest suite * Guesthouse * Hostel * Hotel * Loft * Resort * Townhouse * Villa |
| reviews_count | Total reviews count | Integer |
| review_scores | Detailed reviews scores per category | Review Scores object |
| room_type | Listing room type | String Available types: * Entire home/apt * Private room * Shared room |
| room_type_category | Room type category | String |
| bed_type | Bed type | String |
| bed_type_category | Bed type category | String |
| require_guest_profile_picture | Boolean | |
| Require_guest_phone_ | Boolean | |
| verification | ||
| force_mobile_legal_modal | Boolean | |
| check_in_time | Check in time hour | Integer |
| check_out_time | Check out time hour | Integer |
| guests_included | Number of guests included | Integer |
| license | AirBnB license for listing | String |
| max_nights | Max booking nights | Integer |
| square_feet | Listing living area | Integer |
| locale | Listing’s locale | String |
| has_viewed_terms | Boolean | |
| has_viewed_cleaning | Boolean | |
| has_agreed_to_legal_terms | Boolean | |
| Has_viewed_ib_ | Boolean | |
| perf_dashboard_panel | ||
| language | Listing page language | String |
| experiences_offered | Listing’ experience offered along with booking | String |
| max_nights_input_value | Integer | |
| min_nights_input_value | Integer | |
| requires_license | Indicator if the listing requires licence | Boolean |
| property_type_id | Property type ID | Integer |
| house_rules | Hosting rules provided by host when booking | String |
| description | Listing full description | String |
| description_locale | Description locale | String |
| summary | Description summary | String |
| space | Listing space | String |
| access | Allowed accesses in the listing from host | String |
| interaction | Host interaction | String |
| neighborhood_overview | Listing neighborhood overview | String |
| transit | Listing around transit | String |
| amenities | All included amenities | String - array |
| is_location_exact | Verified exact location | Boolean |
| star_rating | Total start rating | Float |
| time_zone_name | Full timezone name | String |
| created_at | Listing creation date and time | Timestamp |
| updated_at | Listing updates date and time | Timestamp |
| exists | Indicator if the listing is still active over AirBnB or not. | Boolean |
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/{id}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The Airbnb listing Id. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the listing should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
Get VRBO Listing Info
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/vrbo-property/1943760?state=FL")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/vrbo-property/1943760?state=FL")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/vrbo-property/1943760');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'FL'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/vrbo-property/1943760?state=FL"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"propertyTimezone": "America/New_York",
"address": {
"city": "Gainesville",
"country": "US",
"postalCode": "32608",
"stateProvince": "FL"
},
"availabilityUpdated": "2023-09-01",
"averageRating": 4.8541665,
"bedrooms": 2,
"canonicalLink": "https://www.vrbo.com/1943760",
"description": "One block from Shands Hospital, VA Hospital, and the University of Florida campus. This is a spacious ground level condo with two bedrooms. Each includes walk-in closet, luxury queen bed, chest of drawers, ceiling fan, bedside table, bed linens provided; there is one bathroom, tiled with tub/shower grab bar, towels provided; fully furnished kitchen with refrigerator, dishwasher, gas stove, microwave, all dishes and cooking utensils; table and 4 chairs; living room with large comfortable sofa, two large upholstered chairs, 50 inch flat screen TV, cable, internet, wireless; sleeps four comfortably and 1 other on the sofa.\nThe complex does not allow dogs.",
"detailPageUrl": "/1943760?unitId=2506282&childrenCount=0&noDates=true",
"featuredAmenities": [
"POOL",
"INTERNET",
"AIR_CONDITIONING",
"TV",
"CABLE",
"PARKING",
"HEATER"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": false,
"latitude": 29.6353672,
"longitude": -82.34372944
},
"geography": {
"description": "Gainesville, Florida, United States of America",
"ids": [
{
"type": "LBS",
"value": "d616f541-1f46-4b1a-a665-986baf96dfec"
}
],
"name": "Gainesville",
"relatedGeographies": null,
"types": [
"locality"
],
"location": {
"lat": 29.651939,
"lng": -82.325043
}
},
"propertyManagerProfile": null,
"headline": "2Short walk to Shands & VA Hospitals, and UF campus",
"houseRules": {
"children": {
"label": "Children allowed",
"note": "There are no play areas for children.",
"allowed": true
},
"events": {
"label": "No events",
"note": null,
"allowed": false
},
"smoking": {
"label": "Smoking allowed",
"note": null,
"allowed": true
},
"pets": {
"label": "No pets",
"note": null,
"allowed": false
},
"unitUrl": "/units/0004/33784c7c-d1c6-4803-8f3d-f022b46ba272",
"checkInTime": "4:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": 20,
"displayText": "Minimum age to rent: 20"
},
"maxOccupancy": {
"adults": null,
"guests": 4,
"label": "Max guests:",
"maxAdultsLabel": null,
"note": null,
"displayText": "Maximum overnight guests: 4"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children allowed",
"note": "There are no play areas for children."
},
{
"key": "petsRule",
"label": "No pets",
"note": null
},
{
"key": "eventsRule",
"label": "No events",
"note": null
},
{
"key": "smokingRule",
"label": "Smoking allowed",
"note": null
}
],
"customRules": [],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 4:00 PM",
"time": "4:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": "Children allowed: ages 0-17",
"allowed": true,
"childrenNotAllowedNote": null,
"note": "There are no play areas for children."
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": null
},
"smokingRule": {
"displayText": "Smoking allowed: outside",
"allowed": true,
"outside": {
"allowed": true,
"note": null
},
"inside": null,
"note": null
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "<strong>100% refund of amount paid</strong> if you cancel at least 14 days before check-in."
},
{
"label": "<strong>50% refund of amount paid</strong> (minus the service fee) if you cancel at least 7 days before check-in."
},
{
"label": "<strong>No refund</strong> if you cancel less than 7 days before check-in."
}
],
"cancellationPolicyLabel": {
"label": "<strong>Free cancellation</strong> up to",
"date": "14 days before check-in",
"isFullRefundWindow": true
},
"cancellationTimelinePeriods": [
{
"timelineLabel": "14 days before check-in",
"refundPercent": 100,
"refundWindowLabel": "100% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "7 days before check-in",
"refundPercent": 50,
"refundWindowLabel": "50% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "Check in",
"refundPercent": 0,
"refundWindowLabel": "No refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": "KEY"
}
],
"policyType": "RELAXED"
},
"instantBookable": true,
"egratedPropertyManager": null,
"platformPropertyManager": false,
"ipmGuaranteedPricingActive": false,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.1943760.2506282",
"listingNumber": 1943760,
"minStayRange": {
"minStayHigh": 7,
"minStayLow": 2
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": true,
"ownersListingProfile": {
"aboutYou": null,
"storyPhoto": null,
"uniqueBenefits": null,
"whyHere": null
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 98,
"currency": "USD",
"formattedAmount": "$98",
"pricePeriodDescription": "avg/night",
"currencySymbol": "$"
},
"propertyId": "1943760",
"id": "49177741",
"propertyManagerMessaging": null,
"propertyType": "Condo",
"propertyTypeKey": "condo",
"recentlyAdded": false,
"registrationNumber": "",
"reviewCount": 48,
"sleeps": 4,
"sleepsDisplay": "Sleeps 4",
"spu": "vrbo-1943760-2506282",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/50000000/49180000/49177800/49177741/7d1d1ee0.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [],
"bathrooms": {
"full": 1,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"nights_booked": null
}
}
This endpoint retrieves the VRBO property's detailed information, reviews count, address, estimated rental income, and calculated occupancy rate.
VRBO Property Data Dictionary
| Attribute | Definition | Data Type |
|---|---|---|
| id | VRBO listing ID: 321.1943760.2506282 | String |
| headline | Listing full name | String |
| address | Listing address including country, state, city, postal code | String |
| propertyTimezone | Full timezone name | String |
| created_at | Listing creation date and time | Timestamp |
| updated_at | Listing updates date and time | Timestamp |
| exists | Indicator if the listing is still active over AirBnB | Boolean |
| propertyId | Property ID | String |
| propertyName | Property name | String |
| propertyType | Property type (e.g., "Condo") | String |
| propertyTypeKey | Property type key (e.g., "condo") | String |
| description | Property description | String |
| canonicalLink | Link to the property listing | String |
| sleeps | Number of guests the property sleeps | Integer |
| bedrooms | Number of bedrooms in the property | Integer |
| bathrooms | Number of bathrooms in the property | Object |
| averageRating | Average rating of the property | Float |
| reviewCount | Number of reviews for the property | Integer |
| onlineBookable | Indicates if the property is bookable online | Boolean |
| instantBookable | Indicates if the property supports instant booking | Boolean |
| unitMetadata | Metadata for the unit | Object |
| featuredAmenities | Featured amenities for the property | Array of Strings |
| allFeaturedAmenitiesRanked | Ranked list of featured amenities | Array of Strings |
| houseRules | Property's house rules | Object |
| cancellationPolicy | Cancellation policy for the property | Object |
| payPerBooking | Indicates if the property uses a pay-per-booking model | Boolean |
| priceSummary | Price summary for the property | Object |
| ownerManaged | Indicates if the property is owner-managed | Boolean |
| ownerListingProfile | Owner's listing profile information | Object |
| propertyManagerProfile | Property manager's profile information | Object |
| registrationNumber | Property registration number (if applicable) | String |
| recentAdded | Indicates if the property was recently added | Boolean |
| takesInquiries | Indicates if the property takes inquiries from guests | Boolean |
| videoUrls | URLs to videos related to the property | Array of Strings |
| thumbnailUrl | URL to the property's thumbnail image | String |
| travelerFeeEligible | Indicates if traveler fees are eligible for the property | Boolean |
| listingNumber | Listing number for the property | Integer |
| multiUnitProperty | Indicates if the property is a multi-unit property | Boolean |
| egratedPropertyManager | Information about an egrated property manager (if applicable) | Object |
| platformPropertyManager | Indicates if the property is managed by a platform property manager | Boolean |
| ipmGuaranteedPricingActive | Indicates if guaranteed pricing is active for the property | Boolean |
| petsAllowed | Indicates if pets are allowed in the property | Boolean |
| minStayRange | Range of minimum stay requirements for the property | Object |
| maxOccupancy | Maximum occupancy details for the property | Object |
| industryHealthAssociations | Health associations associated with the property | Array of Objects |
| regionalHealthGuidelines | Regional health guidelines for the property | Array of Objects |
| impressum | Property's impressum (if applicable) | String |
| occupancy | Occupancy details for the property | Object |
| rentalIncome | Rental income details for the property | Object |
| nightsBooked | Number of nights booked for the property | Integer |
HTTP Request
GET https://api.mashvisor.com/v1.1/client/vrbo-property/{id}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The VRBO listing Id. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the listing should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
Listing's Historical Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/2769902/historical?state=LA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/2769902/historical?state=LA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/2769902/historical');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'LA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/2769902/historical?state=LA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"name": "Kasper's Kountryside Inn",
"airbnb_id": "2769902",
"months": [
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 11,
"nightly_price": 165,
"revenue": 4950,
"occupancy": 30,
"unbooked_nights": null,
"booked_nights": 30,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 10,
"nightly_price": 165,
"revenue": 5122,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 9,
"nightly_price": 195,
"revenue": 3696,
"occupancy": 19,
"unbooked_nights": 11,
"booked_nights": 19,
"occupancy_rate": 63
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 8,
"nightly_price": 198,
"revenue": 8596,
"occupancy": 29,
"unbooked_nights": 2,
"booked_nights": 29,
"occupancy_rate": 94
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 7,
"nightly_price": 194,
"revenue": 19387,
"occupancy": 25,
"unbooked_nights": 6,
"booked_nights": 25,
"occupancy_rate": 81
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 6,
"nightly_price": 206,
"revenue": 15865,
"occupancy": 25,
"unbooked_nights": 5,
"booked_nights": 25,
"occupancy_rate": 83
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 5,
"nightly_price": 207,
"revenue": 12698,
"occupancy": 14,
"unbooked_nights": 17,
"booked_nights": 14,
"occupancy_rate": 45
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 4,
"nightly_price": 210,
"revenue": 27210,
"occupancy": 30,
"unbooked_nights": null,
"booked_nights": 30,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 3,
"nightly_price": 183,
"revenue": 13077,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 2,
"nightly_price": 155,
"revenue": 4340,
"occupancy": 28,
"unbooked_nights": null,
"booked_nights": 28,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2025,
"month": 1,
"nightly_price": 155,
"revenue": 4805,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 12,
"nightly_price": 205,
"revenue": 6353,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 11,
"nightly_price": 155,
"revenue": 4650,
"occupancy": 30,
"unbooked_nights": null,
"booked_nights": 30,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 10,
"nightly_price": 155,
"revenue": 4805,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 9,
"nightly_price": 155,
"revenue": 3565,
"occupancy": 23,
"unbooked_nights": 7,
"booked_nights": 23,
"occupancy_rate": 77
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 8,
"nightly_price": 145,
"revenue": 4495,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 7,
"nightly_price": 145,
"revenue": 3770,
"occupancy": 26,
"unbooked_nights": 5,
"booked_nights": 26,
"occupancy_rate": 84
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 6,
"nightly_price": 145,
"revenue": 3190,
"occupancy": 22,
"unbooked_nights": 8,
"booked_nights": 22,
"occupancy_rate": 73
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 5,
"nightly_price": 145,
"revenue": 1740,
"occupancy": 12,
"unbooked_nights": 19,
"booked_nights": 12,
"occupancy_rate": 39
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 4,
"nightly_price": 145,
"revenue": 2320,
"occupancy": 16,
"unbooked_nights": 14,
"booked_nights": 16,
"occupancy_rate": 53
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 3,
"nightly_price": 145,
"revenue": 2610,
"occupancy": 18,
"unbooked_nights": 13,
"booked_nights": 18,
"occupancy_rate": 58
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 2,
"nightly_price": 145,
"revenue": 1740,
"occupancy": 12,
"unbooked_nights": 17,
"booked_nights": 12,
"occupancy_rate": 41
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2024,
"month": 1,
"nightly_price": 145,
"revenue": 0,
"occupancy": 0,
"unbooked_nights": 31,
"booked_nights": null,
"occupancy_rate": null
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 12,
"nightly_price": 145,
"revenue": 1595,
"occupancy": 11,
"unbooked_nights": 20,
"booked_nights": 11,
"occupancy_rate": 35
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 11,
"nightly_price": 135,
"revenue": 2160,
"occupancy": 16,
"unbooked_nights": 14,
"booked_nights": 16,
"occupancy_rate": 53
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 10,
"nightly_price": 136,
"revenue": 1493,
"occupancy": 11,
"unbooked_nights": 20,
"booked_nights": 11,
"occupancy_rate": 35
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 9,
"nightly_price": 136,
"revenue": 4090,
"occupancy": 30,
"unbooked_nights": null,
"booked_nights": 30,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 8,
"nightly_price": 138,
"revenue": 4150,
"occupancy": 30,
"unbooked_nights": 1,
"booked_nights": 30,
"occupancy_rate": 97
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 7,
"nightly_price": 141,
"revenue": 4358,
"occupancy": 31,
"unbooked_nights": null,
"booked_nights": 31,
"occupancy_rate": 100
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 6,
"nightly_price": 137,
"revenue": 3987,
"occupancy": 29,
"unbooked_nights": 1,
"booked_nights": 29,
"occupancy_rate": 97
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 5,
"nightly_price": 120,
"revenue": 1565,
"occupancy": 13,
"unbooked_nights": 18,
"booked_nights": 13,
"occupancy_rate": 42
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 4,
"nightly_price": 127,
"revenue": 2026,
"occupancy": 16,
"unbooked_nights": 14,
"booked_nights": 16,
"occupancy_rate": 53
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 3,
"nightly_price": 0,
"revenue": 0,
"occupancy": 0,
"unbooked_nights": null,
"booked_nights": null,
"occupancy_rate": null
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 2,
"nightly_price": 0,
"revenue": 0,
"occupancy": 0,
"unbooked_nights": null,
"booked_nights": null,
"occupancy_rate": null
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2023,
"month": 1,
"nightly_price": 0,
"revenue": 0,
"occupancy": 0,
"unbooked_nights": null,
"booked_nights": null,
"occupancy_rate": null
},
{
"airbnb_id": "2769902",
"name": "Kasper's Kountryside Inn",
"year": 2022,
"month": 12,
"nightly_price": 127,
"revenue": 0,
"occupancy": 0,
"unbooked_nights": 31,
"booked_nights": null,
"occupancy_rate": null
}
]
}
}
This endpoint retrieves the Airbnb/VRBO property's 12 historical records - nightly price, revenue, and occupancy, unbooked nights, and occupancy rate - for a specific property.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/{id}/historical
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The property record Id from the Mashvisor database. |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
Neighborhood Historical Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/airbnb?average_by=revenue&state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/airbnb?average_by=revenue&state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/airbnb');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/airbnb?average_by=revenue&state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured for occupancy category like this:
{
"status": "success",
"content": {
"results": [
{
"year": 2025,
"month": 12,
"value": 16
},
{
"year": 2025,
"month": 11,
"value": 28
},
{
"year": 2025,
"month": 10,
"value": 35
},
{
"year": 2025,
"month": 9,
"value": 46
},
{
"year": 2025,
"month": 8,
"value": 61
},
{
"year": 2025,
"month": 7,
"value": 42
},
{
"year": 2025,
"month": 6,
"value": 18
},
{
"year": 2025,
"month": 5,
"value": 20
},
{
"year": 2025,
"month": 4,
"value": 31
},
{
"year": 2025,
"month": 3,
"value": 47
},
{
"year": 2025,
"month": 2,
"value": 44
},
{
"year": 2025,
"month": 1,
"value": 48
}
]
},
"message": "Historical Data fetched successfully"
}
The above command returns JSON structured for revenue category like this:
{
"status": "success",
"content": {
"results": [
{
"year": 2025,
"month": 12,
"value": 2977
},
{
"year": 2025,
"month": 11,
"value": 4501
},
{
"year": 2025,
"month": 10,
"value": 5218
},
{
"year": 2025,
"month": 9,
"value": 6601
},
{
"year": 2025,
"month": 8,
"value": 8229
},
{
"year": 2025,
"month": 7,
"value": 203
},
{
"year": 2025,
"month": 6,
"value": 2410
},
{
"year": 2025,
"month": 5,
"value": 3553
},
{
"year": 2025,
"month": 4,
"value": 4223
},
{
"year": 2025,
"month": 3,
"value": 7065
},
{
"year": 2025,
"month": 2,
"value": 6398
},
{
"year": 2025,
"month": 1,
"value": 5920
}
]
},
"message": "Historical Data fetched successfully"
}
This endpoint retrieves a neighborhood/area’s short-term historical performance for listings in an array.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/historical/airbnb
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | Neighborhood id to fetch data for |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| percentile_rate | Double | 1 | Percentile rate |
| average_by | String | occupancy | Neighborhood id you're targeting. Possbile Inputs: * occupancy * price * revenue |
| category | String | AirBnB category type. Possbile Inputs: * flat * house * apartment * loft |
|
| beds | Integer | 0 to 4 bedrooms value |
Get Listings
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/active-listings?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/active-listings?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/active-listings');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/active-listings?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"num_of_properties": 1011,
"items": 4,
"total_pages": 253,
"page": 1,
"properties": [
{
"id": 104884816,
"property_id": "1001598884664966076",
"host_id": "308816547",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 319,
"night_price": 285,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 200,
"currency": null,
"num_of_baths": 2,
"num_of_rooms": 3,
"occupancy": 16,
"nights_booked": 58,
"rental_income": 1378,
"airbnb_neighborhood_id": 117447,
"name": "Cozy 2nd Floor Home w/Adjustable Beds & Air Hockey",
"description": "\"Relax and Unwind in our Private 2nd Floor House with Adjustable Beds, Air Hockey, and Smart Devices in Every Bedroom\"<br /><br /><b>The space</b><br />Very IMPORTANT: *****Please read carefully before you book*****<br /><br />\"Private Space on the Second Floor\"<br /><br />",
"address": "San Francisco, California, United States",
"airbnb_city": "San Francisco",
"state": "CA",
"capacity_of_people": 7,
"zip": "94124",
"property_type": "House",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,8,9,137,521,522,139,145,657,146,23,665,30,415,671,33,34,35,36,37,39,40,41,44,45,46,47,51,52,308,57,185,77,79,85,86,89,90,91,92,93,94,95,96,97,611,103,236,251",
"airbnb_neighborhood": "Silver Terrace",
"reviews_count": 59,
"start_rating": 4.79,
"reviews": null,
"created_at": "2025-12-04T04:12:53.000Z",
"updated_at": "2025-12-04T04:12:53.000Z",
"last_seen": "2025-11-10T13:45:04.000Z",
"user_id": 308816547,
"num_of_beds": 4,
"lat": 37.7398,
"lon": -122.4,
"image": "https://a0.muscache.com/pictures/miso/Hosting-1001598884664966076/original/ee496d01-2b84-47c1-98d2-ae616363ac15.jpeg",
"url": "https://www.airbnb.com/rooms/1001598884664966076",
"airbnb_listing_id": "1001598884664966076",
"estimation_model": "formula_based",
"star_rating": 4.79,
"neighborhood_zipcode": "94134"
},
{
"id": 104885901,
"property_id": "1002283155405615516",
"host_id": "49665336",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 314,
"night_price": 216,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 120,
"currency": null,
"num_of_baths": 2,
"num_of_rooms": 1,
"occupancy": 6,
"nights_booked": 19,
"rental_income": 373,
"airbnb_neighborhood_id": 117654,
"name": "Luxury Golden Gate Park Getaway",
"description": "Fully remodeled luxury suite near Golden Gate Park, Ocean Beach, Balboa & Lands End. Quiet, safe street with ample free parking. Walk to public transit, markets, and top-rated restaurants on Clement, Geary & Balboa. Features a serene master with walk-in closet & ensuite, spacious living room with plush sofa bed, and second full bath. Premium furniture, hotel-quality bedding, and stylish decor throughout. Perfect for comfort & convenience. No visitors allowed.<br /><br /><b>The space</b><br />Our space, fully remodeled in 2023 with the best materials, invites you to experience the epitome of luxury in San Francisco. Every detail has been meticulously curated, from the high-quality furnishings.<br /><br />The house is uniquely located on a street which offers plenty of street parking (very rare in San Francisco) so you almost never have to search for a parking.<br /><br />The bedroom, featuring a queen bed, a walk-in closet, and a private full bathroom. The spacious living room, equipped with a comfortable sofa bed, connects to a well-equipped kitchenette, and a second full bathroom. <br /><br />The unit provide a 55\" LG smart TV and Apple TV, providing access to all your streaming apps. Stay connected with lightning-fast WiFi (200Mbp+). The kitchenette has all the appliances you need for a short stay (cooktop, freezer, fridge, microwave, toaster). Additioanlly there is a Breville espresso machine, grinder and a regular coffee maker where you can enjoy freshly roasted coffee from several coffee shops around. Most appliances are high quality and brand new so you’re not dealing with old used tools/appliances you see in most places!<br /><br />The unit has direct access to the beautifully designed backyard (only a portion under the deck). The rest of the backyard, sauna, the deck and roof deck is not for guest use! For access to washer/dryer please contact me and we can arrange that for longer stays.<br /><br />Since this is a hosted visit, we kindly ask that guests do not invite outside visitors or host parties at the property. Thank you for your understanding and helping us maintain a peaceful and respectful environment.<br /><br /><b>Guest access</b><br />We provide self check in. The main entry, gate as well as the entry to the guest suite are all equipped with Yale smart lock.<br /><br /><b>Other things to note</b><br />I will provide a guidebook that should help you navigate around Richmond. I ‘m a big foodie and can share all about best restaurants and coffee shops around here (most are walking distance). There is a long list of great restaurants (Mexican, Italian, Japanese, Korean, Indian, Chinese, Moroccan, Turkish, etc)<br /><br /><br />Please check the house rules! No smoking or vaping of any kind on the premise. Please remove your shoes when in the house. The access to backyard is limited to the area under the deck (visible in the picture) and other parts of the house are not included! For access to washer/dryer please contact me and we can arrange that for longer stays (more than 3 days and one load every 3-4 days).<br /><br /><b>Registration Details</b><br />STR-0006182",
"address": "San Francisco, California, United States",
"airbnb_city": "San Francisco",
"state": "CA",
"capacity_of_people": 4,
"zip": "94121",
"property_type": "Guest suite",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,8,137,77,79,657,146,23,89,665,90,93,30,94,671,33,34,98,35,36,100,40,41,236,45,46,47,51,52,308,61,510",
"airbnb_neighborhood": null,
"reviews_count": 52,
"start_rating": 4.96,
"reviews": null,
"created_at": "2025-12-04T04:14:46.000Z",
"updated_at": "2025-12-04T04:14:46.000Z",
"last_seen": "2025-09-24T02:45:19.000Z",
"user_id": 49665336,
"num_of_beds": 2,
"lat": 37.7782,
"lon": -122.489,
"image": "https://a0.muscache.com/pictures/airflow/Hosting-1002283155405615516/original/1ff22a7e-f866-452b-af9b-fb629d474c36.jpg",
"url": "https://www.airbnb.com/rooms/1002283155405615516",
"airbnb_listing_id": "1002283155405615516",
"estimation_model": "formula_based",
"star_rating": 4.96,
"neighborhood_zipcode": "94121"
},
{
"id": 104882680,
"property_id": "1002454386536745431",
"host_id": "541880661",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 306,
"night_price": 244,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 120,
"currency": null,
"num_of_baths": 2,
"num_of_rooms": 3,
"occupancy": 30,
"nights_booked": 109,
"rental_income": 2216,
"airbnb_neighborhood_id": 115774,
"name": "Fullmoon’s house",
"description": "Welcome to views of the Pacific Ocean with this spacious 3 bed, 2 bath on second floor. Behind the modern facade, recessed lightings, plenty of natural light flows throughout the home's open airy layout with skylights. Near Stonestown, Trader Joe's and Whole Foods, and H-mart. Easy access to 280 Freeway, Bart and Muni Metro Lines. Nearby parks including the Merced Heights Playground, Minnie & Lovie Ward Recreational Center, Lake Merced Park and Harding Park Golf Course.<br /><br /><b>Registration Details</b><br />2023-008058STR",
"address": "San Francisco, California, United States",
"airbnb_city": "San Francisco",
"state": "CA",
"capacity_of_people": 5,
"zip": "94132",
"property_type": "House",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,133,8,9,137,657,23,665,27,30,671,672,33,34,674,35,36,37,39,40,41,44,45,46,47,51,52,308,64,73,74,77,85,86,87,89,90,91,92,93,94,95,96,227,611,103,236,625,251",
"airbnb_neighborhood": "Ingleside Terraces",
"reviews_count": 126,
"start_rating": 4.98,
"reviews": null,
"created_at": "2025-12-04T04:08:36.000Z",
"updated_at": "2025-12-04T04:08:36.000Z",
"last_seen": "2025-10-07T02:47:54.000Z",
"user_id": 541880661,
"num_of_beds": 3,
"lat": 37.7169,
"lon": -122.468,
"image": "https://a0.muscache.com/pictures/miso/Hosting-1002454386536745431/original/f857e125-6958-4108-b401-4f535828a6c4.jpeg",
"url": "https://www.airbnb.com/rooms/1002454386536745431",
"airbnb_listing_id": "1002454386536745431",
"estimation_model": "formula_based",
"star_rating": 4.98,
"neighborhood_zipcode": "94112"
},
{
"id": 104891303,
"property_id": "1005129877077277243",
"host_id": "3259677",
"source": "Airbnb",
"status": "ACTIVE",
"night_priceـnative": 259,
"night_price": 224,
"weekly_price": 0,
"monthly_price": 0,
"cleaning_fee_native": 100,
"currency": null,
"num_of_baths": 1,
"num_of_rooms": 2,
"occupancy": 41,
"nights_booked": 136,
"rental_income": 2769,
"airbnb_neighborhood_id": 227971,
"name": "Golden Gate Park Garden Apartment",
"description": "Enjoy everything San Francisco has to offer when you make this cozy garden apartment your home base. Just steps from Golden Gate Park, stroll to the De Young museum, Japanese Tea Garden, Science Academy and neighborhood restaurants. With two bedrooms, two seating areas, a work station, kitchenette, and your own private garden, you'll have plenty of space to relax and settle in.<br /><br /><b>The space</b><br />This is a garden apartment, located in the lower level of a classic San Francisco Edwardian-era row house. Your hosts live in the space above and have created this welcoming space for you to enjoy! The unit features:<br /><br />-Two bedrooms, each with a double bed<br />-Bedroom one includes an en suite bathroom with walk-in shower (this is the only bathroom in the unit)<br />-A kitchenette with mini fridge, microwave, coffee maker, tea kettle, coffee bean grinder, toaster oven, and single burner induction cooktop<br />-Washer, dryer, and dishwasher<br />-Two seating areas; one includes a convertible sleeper sofa<br />-Private backyard accessible only by guests of this garden apartment<br /><br /><b>Guest access</b><br />Guests can enjoy the private backyard— featuring a basketball half court, garden, and seating area—all to themselves.<br /><br /><b>Other things to note</b><br />Please note that there are two bedrooms and one bathroom. The primary bedroom is an en suite, so the bathroom is accessed from within this bedroom. <br /><br />To access the unit, you'll enter a security code on a keypad that opens a door into the home's garage, go through the garage to reach the unit's private door, which will be left unlocked with a key hanging nearby.<br /><br /><b>Registration Details</b><br />2023-011479STR",
"address": "San Francisco, California, United States",
"airbnb_city": "San Francisco",
"state": "CA",
"capacity_of_people": 4,
"zip": "94118",
"property_type": "Apartment",
"room_type": "Entire home/apt",
"room_type_category": "entire_home",
"amenities": "1,4,392,73,137,394,77,145,146,85,86,23,280,89,665,90,92,93,30,94,671,33,34,35,36,101,39,103,40,44,236,45,47,51,52,251,510",
"airbnb_neighborhood": null,
"reviews_count": 107,
"start_rating": 4.95,
"reviews": null,
"created_at": "2025-12-04T04:24:57.000Z",
"updated_at": "2025-12-04T04:24:57.000Z",
"last_seen": "2025-09-24T02:45:19.000Z",
"user_id": 3259677,
"num_of_beds": 3,
"lat": 37.7736,
"lon": -122.468,
"image": "https://a0.muscache.com/pictures/bb97e590-ddfe-46a5-84bb-a6bef6ff6c97.jpg",
"url": "https://www.airbnb.com/rooms/1005129877077277243",
"airbnb_listing_id": "1005129877077277243",
"estimation_model": "formula_based",
"star_rating": 4.95,
"neighborhood_zipcode": "94118"
}
]
}
}
Lists all active short-term rentals for a specific location: city, zip code, or neighborhood.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/active-listings
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| neighborhood | Long | Neighborhood id you're targeting | |
| zip_code | Integer | Any postal zip code. | |
| page | Integer | 1 | Page number |
| items | Integer | 4 | Items number per page. |
Market Summary
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/market-summary?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/market-summary?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/market-summary');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/market-summary?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"listings_count": 1011,
"property_types": {
"total_types": 1011,
"histogram": [
"Hotel",
"Studio",
"Apartment",
"House",
...
]
},
"occupancy_histogram": {
"average_occupancy": 25.882294757665676,
"histogram": [
57,
50,
43,
21,
33,
30,
49,
54,
59,
...
]
},
"night_price_histogram": {
"average_price": 298.4451038575668,
"histogram": [
93,
123,
136,
115,
108,
163,
83,
212,
161,
...
]
},
"rental_income_histogram": {
"average_rental_income": 2172.6191889218594,
"histogram": [
1581,
1845,
1768,
...
]
},
"listings_ids": [
"2866061",
"2866060",
"400898",
"89116",
"1895875",
"2504901",
"1408554",
"2278063",
"837857",
"1535663",
...
]
}
}
This endpoint retrieves a summary and overview for a specific location: city, zip code, or neighborhood.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/market-summary
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| neighborhood | Long | Neighborhood id you're targeting | |
| zip_code | Integer | Any postal zip code. |
Short-Term Regulations by City
Sample Request
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/short-term-regulatory?state=CA&city=Los%20Angeles")
.method("GET", body)
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require "uri"
require "net/http"
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/short-term-regulatory?state=CA&city=Los Angeles")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = "YOUR_API_KEY"
response = https.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/short-term-regulatory');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/short-term-regulatory?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"list": [
{
"state": "California",
"state_short": "CA",
"city": "Los Angeles",
"rating": "Negative",
"rules_summary": "An accessory use of a Host’s Primary Residence for a maximum of 120 days in a calendar year for the purpose of providing Short-Term Rental in compliance with the registration and other requirements of Los Angeles Municipal Code Section 12.22 A 32.",
"Legal_for_occupied": "No",
"occupied_days_limit": "120",
"permit_fee": "$89 (renews yearly)",
"rules_source": "https://planning.lacity.org/plans-policies/initiatives-policies/home-sharing\r",
"lat": 34.0522,
"lng": -118.244
}
]
},
"message": "Short Term Regulatory fetched successfully"
}
Retrieve detailed short-term rental (STR) regulations for a specific city and state, including legal status, occupancy limits, permit requirements, and official rule sources. This endpoint helps property investors, managers, and platforms stay compliant with local Airbnb laws before listing a property.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/short-term-regulatory
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| city* | String | A specific city you're looking for. | |
| rating | String | Positive, Negative, Neutral, or Restricted |
Listing's Occupancy Rates
For each Airbnb/VRBO listing, we calculate its occupancy rate (month per month and annual rates), plus 12-month historical occupancy data.
Using our proprietary algorithms and data validation methods, we have solved the issue of ‘blocked by host’ vs ‘booked’ calendar and offer highly reliable and accurate occupancy data. Our algorithms account for seasonality, local market fluctuations and management of data outliers.
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/occupancy-rates?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/occupancy-rates?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/occupancy-rates');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/occupancy-rates?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"occupancy_rates": {
"studio": 60,
"one_bedroom": 29,
"two_bedrooms": 23,
"three_bedrooms": 22,
"four_bedrooms": 16
},
"sample_count": 1011,
"detailed": {
"studio_occupancies_histogram": [
38,
43,
60,
73,
100
],
"one_bedroom_histogram": [
1,
1,
1,
1,
2,
2,
2,
2,
2,
3,
3,
3,
3,
4,
4,
...
],
"two_bedrooms_histogram": [
1,
1,
2,
3,
3,
3,
4,
4,
...
],
"three_bedrooms_histogram": [
1,
2,
2,
3,
3,
4,
4,
4,
4,
4,
4,
5,
...
],
"four_bedrooms_histogram": [
3,
4,
5,
5,
5,
6,
6,
6,
7,
8,
...
]
}
}
}
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/occupancy-rates
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| neighborhood | Long | Neighborhood id you're targeting | |
| zip_code | Integer | Any postal zip code. |
Get Property Types
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/property-types?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/property-types?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/property-types');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/property-types?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"Apartment": 247,
"Casa particular": 1,
"Condo": 3,
"Condominium": 95,
"Entire bungalow": 2,
"Entire cottage": 2,
"Entire guesthouse": 17,
"Entire serviced apartment": 2,
"Entire townhouse": 10,
"Entire vacation home": 1,
"Guest house": 1,
"Guest suite": 266,
"Hotel": 5,
"Hotel suite": 1,
"House": 344,
"Loft": 4,
"Studio": 9,
"Townhome": 1
}
}
Checks all market property types for a zip code or a neighborhood and returns counts.
Available Property Types:
- Apartment
- Other
- House
- Bed & Breakfast
- Condominium
- Townhouse
- Loft
- Cottage
- Guesthouse
- Farm stay
- Bungalow
- Guest suite
- Cabin
- Barn
- Dome house
- Villa
- Chalet
- Tiny house
- Serviced apartment
- Bed and breakfast
- Earth house
- Lighthouse
- Nature lodge
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/property-types
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| neighborhood | Long | Neighborhood id you're targeting | |
| zip_code | Integer | Any postal zip code. |
Get Super Hosts
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/super-hosts?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/super-hosts?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/super-hosts');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/super-hosts?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"items_per_page": 10,
"page": 1,
"total_pages": 828,
"total_items": 8274,
"super_hosts": [
{
"id": 6018001,
"first_name": "Hannah",
"picture_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true,
"created_at": "2013-04-21T05:22:20Z",
"reviewee_count": 19,
"recommendation_count": 2,
"last_name": "",
"thumbnail_medium_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=68:*&output-format=jpg&output-quality=70",
"picture_large_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=640:*&output-format=jpg&output-quality=70",
"response_time": "within an hour",
"response_rate": "100%",
"acceptance_rate": "95%",
"wishlists_count": 3,
"publicly_visible_wishlists_count": 0,
"is_superhost": true,
"identity_verified": false,
"neighborhood": "Noe Valley",
"verifications": [
"email",
"phone",
"reviews"
],
"verification_labels": [
"Email Address",
"Phone Number",
"Reviewed"
],
"location": "San Francisco, California, United States",
"is_generated_user": false,
"about": "The best summary of myself is that I'm an old soul who's young at heart. \r\n\r\nAfter 4 years of office work, I quit to do freelance copywriting and editing so I'd have more time to pursue my artistic passions -- jewelry making and illustration. \r\n\r\nI've lived abroad twice, once in Paris and once in London, and I try to travel outside the country every year. When at home in the lovely city of San Francisco, I'm often seeing biking around the neighborhood, singing karaoke, or hiking on one of the beautiful travels just outside the city.",
"school": "",
"work": "",
"groups": "",
"listings_count": 2,
"total_listings_count": 2,
"friends_count": 2,
"recent_review": {
"review": {
"id": 39346783,
"reviewer_id": 38182096,
"reviewee_id": 6018001,
"created_at": "2015-07-22T15:44:02Z",
"reviewer": {
"user": {
"id": 38182096,
"first_name": "Misha",
"picture_url": "https://a0.muscache.com/ac/users/38182096/profile_pic/1436726136/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a0.muscache.com/ac/users/38182096/profile_pic/1436726136/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true
}
},
"comments": "Hannah is the perfect host. Laid-back yet professional. We felt privileged staying with her and by the end as though we were leaving an old friend's place.",
"listing_id": 4887782,
"reviewee": {
"user": {
"id": 6018001,
"first_name": "Hannah",
"picture_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a1.muscache.com/ac/users/6018001/profile_pic/1383670797/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true
}
},
"listing": {
"listing": {
"id": 4887782,
"city": "San Francisco",
"thumbnail_url": "https://a0.muscache.com/ac/pictures/61301000/9cfa929c_original.jpg?interpolation=lanczos-none&size=small&output-format=jpg&output-quality=70",
"medium_url": "https://a0.muscache.com/ac/pictures/61301000/9cfa929c_original.jpg?interpolation=lanczos-none&size=medium&output-format=jpg&output-quality=70",
"user_id": 6018001,
"picture_url": "https://a0.muscache.com/ac/pictures/61301000/9cfa929c_original.jpg?interpolation=lanczos-none&size=large_cover&output-format=jpg&output-quality=70",
"xl_picture_url": "https://a0.muscache.com/ac/pictures/61301000/9cfa929c_original.jpg?interpolation=lanczos-none&size=x_large_cover&output-format=jpg&output-quality=70",
"price": 115,
"native_currency": "EUR",
"price_native": 108,
"price_formatted": "€108",
"lat": 37.74740659651842,
"lng": -122.421827960416,
"country": "United States",
"name": "ROOM #2- A Mediterranean Getaway ",
"smart_location": "San Francisco, CA",
"has_double_blind_reviews": false,
"instant_bookable": false
}
}
}
},
"recent_recommendation": {
"recommendation": {
"id": 244252,
"created_at": "2013-11-08T10:48:19Z",
"user_id": 6018001,
"recommendation": "Hannah is an amazing tour de force of creativity and energy. She is extremely sociable, very considerate and a great host. A treat to meet!",
"left_by_user": {
"user": {
"id": 2314203,
"first_name": "Jan",
"picture_url": "https://a0.muscache.com/ac/users/2314203/profile_pic/1336774285/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a0.muscache.com/ac/users/2314203/profile_pic/1336774285/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true,
"created_at": "2012-05-07T19:01:20Z",
"reviewee_count": 13,
"recommendation_count": 0,
"last_name": "",
"thumbnail_medium_url": "https://a0.muscache.com/ac/users/2314203/profile_pic/1336774285/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=68:*&output-format=jpg&output-quality=70",
"picture_large_url": "https://a0.muscache.com/ac/users/2314203/profile_pic/1336774285/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=640:*&output-format=jpg&output-quality=70",
"response_time": "N/A",
"response_rate": "N/A",
"acceptance_rate": "N/A",
"wishlists_count": 4,
"publicly_visible_wishlists_count": 1,
"is_superhost": false
}
},
"relationship_type": "friend",
"relationship_type_text": "Friend"
}
}
},
{
"id": 23278,
"first_name": "Zain And Duncan",
"picture_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true,
"created_at": "2009-06-26T01:35:05Z",
"reviewee_count": 148,
"recommendation_count": 1,
"last_name": "",
"thumbnail_medium_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=68:*&output-format=jpg&output-quality=70",
"picture_large_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=640:*&output-format=jpg&output-quality=70",
"response_time": "within a few hours",
"response_rate": "94%",
"acceptance_rate": "100%",
"wishlists_count": 7,
"publicly_visible_wishlists_count": 4,
"is_superhost": true,
"identity_verified": true,
"neighborhood": "Mission District",
"verifications": [
"email",
"phone",
"facebook",
"reviews",
"kba"
],
"verification_labels": [
"Email Address",
"Phone Number",
"Facebook",
"Reviewed",
"Offline ID"
],
"location": "San Francisco, California, United States",
"is_generated_user": false,
"about": "My name is Zain and I'm a nerd. By day, I write code at a small startup in San Francisco, CA. By night... well, actually, I code at night too. But I got an email from a Nigerian prince the other day, so I have that going for me.\r\n\r\nMy roommate Duncan is an ENTP, just like me. He's one of the friendliest people I've ever met -- like when you're in a bar and you turn around for a second, he'll have made a new friend.",
"school": "Purdue University",
"work": "Coder",
"groups": "",
"listings_count": 6,
"total_listings_count": 6,
"friends_count": 0,
"recent_review": {
"review": {
"id": 41631539,
"reviewer_id": 37264011,
"reviewee_id": 23278,
"created_at": "2015-08-08T14:32:42Z",
"reviewer": {
"user": {
"id": 37264011,
"first_name": "Anna",
"picture_url": "https://a0.muscache.com/ac/users/37264011/profile_pic/1435787821/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a0.muscache.com/ac/users/37264011/profile_pic/1435787821/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true
}
},
"comments": "This place is excellently exceptional! Duncan and Zain were very welcoming and helpful with suggestions. The house had everything you needed and was clean. I felt completely chilled staying here. Roux the dog was lovely as well. Would recommend this place to everyone I know visiting San Francisco wanting to see the non touristy side.",
"listing_id": 5299461,
"reviewee": {
"user": {
"id": 23278,
"first_name": "Zain And Duncan",
"picture_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a0.muscache.com/ac/users/23278/profile_pic/1422513326/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true
}
},
"listing": {
"listing": {
"id": 5299461,
"city": "San Francisco",
"thumbnail_url": "https://a1.muscache.com/ac/pictures/69646425/752f073f_original.jpg?interpolation=lanczos-none&size=small&output-format=jpg&output-quality=70",
"medium_url": "https://a1.muscache.com/ac/pictures/69646425/752f073f_original.jpg?interpolation=lanczos-none&size=medium&output-format=jpg&output-quality=70",
"user_id": 23278,
"picture_url": "https://a1.muscache.com/ac/pictures/69646425/752f073f_original.jpg?interpolation=lanczos-none&size=large_cover&output-format=jpg&output-quality=70",
"xl_picture_url": "https://a1.muscache.com/ac/pictures/69646425/752f073f_original.jpg?interpolation=lanczos-none&size=x_large_cover&output-format=jpg&output-quality=70",
"price": 49,
"native_currency": "EUR",
"price_native": 46,
"price_formatted": "€46",
"lat": 37.75861793523278,
"lng": -122.4131771000983,
"country": "United States",
"name": "Bunk bed in Treat Street Clubhouse",
"smart_location": "San Francisco, CA",
"has_double_blind_reviews": false,
"instant_bookable": true
}
}
}
}
},
{
"id": 4903607,
"first_name": "Doyle",
"picture_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true,
"created_at": "2013-01-30T11:25:44Z",
"reviewee_count": 64,
"recommendation_count": 0,
"last_name": "",
"thumbnail_medium_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=68:*&output-format=jpg&output-quality=70",
"picture_large_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=640:*&output-format=jpg&output-quality=70",
"response_time": "within an hour",
"response_rate": "100%",
"acceptance_rate": "100%",
"wishlists_count": 3,
"publicly_visible_wishlists_count": 1,
"is_superhost": true,
"identity_verified": true,
"neighborhood": "Cole Valley",
"verifications": [
"email",
"phone",
"facebook",
"reviews",
"kba"
],
"verification_labels": [
"Email Address",
"Phone Number",
"Facebook",
"Reviewed",
"Offline ID"
],
"location": "San Francisco, California, United States",
"is_generated_user": false,
"about": "I'm a design professional & I travel a lot for work I enjoy fitness, the outdoors, eating out and spending time with my friends. ",
"school": "",
"work": "interior design professional",
"groups": "",
"listings_count": 1,
"total_listings_count": 1,
"friends_count": 0,
"recent_review": {
"review": {
"id": 36653728,
"reviewer_id": 8928455,
"reviewee_id": 4903607,
"created_at": "2015-06-30T11:20:18Z",
"reviewer": {
"user": {
"id": 8928455,
"first_name": "Charlotte",
"picture_url": "https://a2.muscache.com/defaults/user_pic-225x225.png?v=2",
"thumbnail_url": "https://a2.muscache.com/defaults/user_pic-50x50.png?v=2",
"has_profile_pic": false
}
},
"comments": "I haven't actually met Doyle but he was very quick in answering my inquiries. His place is perfectly located in SF and great to enjoy the city. ",
"listing_id": 913508,
"reviewee": {
"user": {
"id": 4903607,
"first_name": "Doyle",
"picture_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=225:*&output-format=jpg&output-quality=70",
"thumbnail_url": "https://a2.muscache.com/ac/users/4903607/profile_pic/1359553850/original.jpg?interpolation=lanczos-none&crop=w:w;*,*&crop=h:h;*,*&resize=50:*&output-format=jpg&output-quality=70",
"has_profile_pic": true
}
},
"listing": {
"listing": {
"id": 913508,
"city": "San Francisco",
"thumbnail_url": "https://a2.muscache.com/ac/pictures/13386135/6d97468b_original.jpg?interpolation=lanczos-none&size=small&output-format=jpg&output-quality=70",
"medium_url": "https://a2.muscache.com/ac/pictures/13386135/6d97468b_original.jpg?interpolation=lanczos-none&size=medium&output-format=jpg&output-quality=70",
"user_id": 4903607,
"picture_url": "https://a2.muscache.com/ac/pictures/13386135/6d97468b_original.jpg?interpolation=lanczos-none&size=large_cover&output-format=jpg&output-quality=70",
"xl_picture_url": "https://a2.muscache.com/ac/pictures/13386135/6d97468b_original.jpg?interpolation=lanczos-none&size=x_large_cover&output-format=jpg&output-quality=70",
"price": 139,
"native_currency": "EUR",
"price_native": 131,
"price_formatted": "€131",
"lat": 37.76412760792781,
"lng": -122.45310355310517,
"country": "United States",
"name": "Delightful Designer Digs ",
"smart_location": "San Francisco, CA",
"has_double_blind_reviews": false,
"instant_bookable": false
}
}
}
}
},
...
]
}
}
Obtains a list of an area’s airbnb super hosts for a zip code or a city.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/super-hosts
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| zip_code | Integer | Any postal zip code. | |
| page | Integer | 1 | page number. |
Airbnb Top Reviewed Homes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"items_per_page": 10,
"page": 1,
"reviews_count_limit": 30,
"total_pages": 2,
"total_items": 11,
"list": [
{
"propertyTimezone": "America/Los_Angeles",
"address": {
"city": "Burbank",
"country": "US",
"postalCode": "91506",
"stateProvince": "CA"
},
"availabilityUpdated": "2023-07-27",
"averageRating": 4.9006624,
"bedrooms": 0,
"canonicalLink": "https://www.vrbo.com/635249",
"description": "The Space\n\nA short 13 minute walk from beautiful downtown Burbank, the Burbank Sanctuary is a well-appointed and comfortable studio apartment with an elegant boutique touch. Enjoy luxury bedding, abundant amenities, 42\" flat screen and full kitchen. Experience five diamond standards with at home comfort, privacy and security. An ALDI supermarket is at the other end of the street.\n\nThe Burbank Sanctuary is a downstairs apartment. While the vast majority of our guests love the apartment, it's not for very light sleepers.\n\nRelaxation and comfort will come easy during your stay with us. Your experience includes queen-size luxury bedding, unlimited hot showers, free wifi and digital 55\" smart widescreen with Netflix, Amazon, Hulu and Pandora. There is no local TV.\n\nYou will also have a full size kitchen at your fingertips with all the cooking comforts you could wish for. A full size fridge, unlimited ice, soap, shampoo and towels are among the many delightful amenities available during your stay at the Burbank Sanctuary.\n\nEnjoy accommodations and VIP treatment of a boutique hotel with at home comfort, privacy and security.\n\nThe building is a charming and cozy 5-unit apartment residence. There is a secluded side-entrance for maximum privacy and home-like comfort.\n\nGuest Access\n\nAmple unrestricted street parking is available, no permits or pesky meter feeding required. Driveway parking is reserved for our permanent residents. Everything is digital, no keys to weigh you down during your time out and about. I set a new code for each guest which assures total privacy and security during your stay.\n\nInteraction with Guests\n\nDepending upon the time of year, Self check-in is available or you may meet and greet with your host, sharing tips and information about the apartment and local area. \n\nThe Neighborhood \n\nI love the Magnolia Park area of Burbank. This property sits next to the Chandler bike path and is walking distance from the downtown Burbank area. There's convenient food, markets and plenty of shopping nearby.\n\nGetting Around\n\nI always recommend rideshares such as Uber or Lyft, but public transportation is equally within reach.\n\nOther Things to Note\n\nI have been in the hospitality industry since 2005. I owned and operated two hotels and I have traveled extensively. My sensibilities are for the traveler and the amenities included in your stay meet my high standards for quality hotel accommodations. In addition, the Burbank Sanctuary offers the fastest and most reliable internet available in the city.\n\nHouse Rules \n\nI cater to the nonsmoker without pets. Smoking is not permitted inside the apartment nor on the property. Our other tenants dislike the aroma. We love small non-human friends, but unfortunately they are not allowed at the property. We observe quiet time from 10pm to 8am and kindly request that you do the same by turning down your music or television during these times.",
"detailPageUrl": "/635249?unitId=1183030&childrenCount=0&noDates=true",
"featuredAmenities": [
"INTERNET",
"AIR_CONDITIONING",
"TV",
"CABLE",
"PARKING",
"NO_SMOKING",
"HEATER"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": true,
"latitude": 34.177985,
"longitude": -118.320758
},
"geography": {
"description": "Burbank, Los Angeles County, California, United States of America",
"ids": [
{
"type": "LBS",
"value": "3b66d3bc-445d-4a3e-a623-8a4417745d1d"
}
],
"name": "Burbank",
"relatedGeographies": null,
"types": [
"locality"
],
"location": {
"lat": 34.18084,
"lng": -118.308968
}
},
"propertyManagerProfile": null,
"headline": "The Sanctuary - Be Pampered - Full Kitchen",
"houseRules": {
"children": {
"label": "Children not allowed",
"note": null,
"allowed": false
},
"events": {
"label": "No events",
"note": null,
"allowed": false
},
"smoking": {
"label": "No smoking",
"note": null,
"allowed": false
},
"pets": {
"label": "No pets",
"note": null,
"allowed": false
},
"unitUrl": "/units/0004/6ad4b648-15a1-4694-b38c-255370e5e59a",
"checkInTime": "4:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": 18,
"displayText": "Minimum age to rent: 18"
},
"maxOccupancy": {
"adults": null,
"guests": 2,
"label": "Max guests:",
"maxAdultsLabel": null,
"note": null,
"displayText": "Maximum overnight guests: 2"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children not allowed",
"note": null
},
{
"key": "petsRule",
"label": "No pets",
"note": null
},
{
"key": "eventsRule",
"label": "No events",
"note": null
},
{
"key": "smokingRule",
"label": "No smoking",
"note": null
}
],
"customRules": [],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 4:00 PM",
"time": "4:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": "No children allowed",
"allowed": false,
"childrenNotAllowedNote": null,
"note": null
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": null
},
"smokingRule": {
"displayText": "No smoking allowed",
"allowed": false,
"outside": null,
"inside": null,
"note": null
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "<strong>100% refund of amount paid</strong> if you cancel at least 30 days before check-in."
},
{
"label": "<strong>50% refund of amount paid</strong> (minus the service fee) if you cancel at least 14 days before check-in."
},
{
"label": "<strong>No refund</strong> if you cancel less than 14 days before check-in."
}
],
"cancellationPolicyLabel": {
"label": "<strong>Free cancellation</strong> up to",
"date": "30 days before check-in",
"isFullRefundWindow": true
},
"cancellationTimelinePeriods": [
{
"timelineLabel": "30 days before check-in",
"refundPercent": 100,
"refundWindowLabel": "100% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "14 days before check-in",
"refundPercent": 50,
"refundWindowLabel": "50% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "Check in",
"refundPercent": 0,
"refundWindowLabel": "No refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": "KEY"
}
],
"policyType": "MODERATE"
},
"instantBookable": false,
"egratedPropertyManager": null,
"platformPropertyManager": false,
"ipmGuaranteedPricingActive": false,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.635249.1183030",
"listingNumber": 635249,
"minStayRange": {
"minStayHigh": 30,
"minStayLow": 30
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": true,
"ownersListingProfile": {
"aboutYou": "My sensibilities are for the traveler and the amenities meet my high standards for a quality hotel stay. I offer the fastest internet available in the city.",
"storyPhoto": null,
"uniqueBenefits": null,
"whyHere": null
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 165,
"currency": "USD",
"formattedAmount": "$165",
"pricePeriodDescription": "avg/night",
"currencySymbol": "$"
},
"propertyId": "635249",
"id": "33505162",
"propertyManagerMessaging": null,
"propertyType": "Apartment",
"propertyTypeKey": "apartment",
"recentlyAdded": false,
"registrationNumber": "",
"reviewCount": 151,
"sleeps": 2,
"sleepsDisplay": "Sleeps 2",
"spu": "vrbo-635249-1183030",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/34000000/33510000/33505200/33505162/e73f620d.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [
"https://youtube.com/watch?v=GIiO5vRz-T8"
],
"bathrooms": {
"full": 1,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"calendar_2023": {
"metadata": "N/A",
"calendar_months": [
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
{
"days": [
{
"date": {
"day": 1,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 186,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 185,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 184,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_MIN_PRIOR_NOTIFICATION",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 183,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 182,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 181,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 180,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 179,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 178,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 177,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 176,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 175,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 174,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 173,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 172,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 171,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 170,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 169,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 168,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 167,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 166,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 165,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 9,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 164,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 163,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 162,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 161,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 160,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 159,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 158,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 157,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 156,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 155,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 154,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 153,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 152,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 151,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 150,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 149,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 148,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 147,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 146,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 145,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 144,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 143,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 142,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 141,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 140,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 139,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 138,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 137,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 136,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 135,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 134,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 10,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 133,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 132,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 131,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 130,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 129,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 128,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 127,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 126,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 125,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 124,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 123,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 122,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 121,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 120,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 119,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 118,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 117,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 116,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 115,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 114,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 113,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 112,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 111,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 110,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 109,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 108,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 107,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 106,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 105,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 104,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 11,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 103,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 102,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 101,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 100,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 99,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 98,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 97,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 96,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 95,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 94,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 93,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 92,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 91,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 90,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 89,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 88,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 87,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 86,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 85,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 84,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 83,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 82,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 81,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 80,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 79,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 78,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 77,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 76,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 75,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 74,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 73,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 12,
"year": 2023
}
]
},
"created_at": "2023-08-31T12:00:07.676Z",
"exists": true,
"updated_at": "2023-09-11T17:16:58.661Z",
"vrbo_id": "635249"
},
{
"propertyTimezone": "America/Los_Angeles",
"address": {
"city": "Burbank",
"country": "US",
"postalCode": "91505",
"stateProvince": "CA"
},
"availabilityUpdated": "2023-07-28",
"averageRating": 4.8794327,
"bedrooms": 1,
"canonicalLink": "https://www.vrbo.com/1150361?dateless=true",
"description": "Luxurious completely renovated community featuring a one bedroom/one bath apartment home that sleeps four comfortably. Walking distance to restaurants and shops. The unit includes private parking, hardwood floors, central AC/heating, new kitchen, front load washer/dryer, new bathroom, TV stream, WIFI, backyard with BBQ, and cooking essentials. The building is set in the prime media district of Burbank, the media capital of the world, home to Disney Studios, Warner Brothers, Nickelodeon and NBC.",
"detailPageUrl": "/1150361?unitId=1698574&childrenCount=0&arrival=2023-10-04&departure=2023-10-07",
"featuredAmenities": [
"INTERNET",
"AIR_CONDITIONING",
"HOT_TUB",
"TV",
"CABLE",
"WASHER_DRYER",
"PARKING",
"NO_SMOKING",
"HEATER"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": true,
"latitude": 34.1517803,
"longitude": -118.33712939999998
},
"geography": {
"description": "Burbank, Los Angeles County, California, United States of America",
"ids": [
{
"type": "LBS",
"value": "3b66d3bc-445d-4a3e-a623-8a4417745d1d"
}
],
"name": "Burbank",
"relatedGeographies": null,
"types": [
"locality"
],
"location": {
"lat": 34.18084,
"lng": -118.308968
}
},
"propertyManagerProfile": null,
"headline": "City Escape Living",
"houseRules": {
"children": {
"label": "Children allowed",
"note": null,
"allowed": true
},
"events": {
"label": "No events",
"note": "No gatherings/parties. City nuisance fine $1000 ",
"allowed": false
},
"smoking": {
"label": "No smoking",
"note": "No smoking at property",
"allowed": false
},
"pets": {
"label": "No pets",
"note": "No Pets",
"allowed": false
},
"unitUrl": "/units/0004/46b8a566-6d57-4e63-be5b-1ae6d31e0bc3",
"checkInTime": "4:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": 21,
"displayText": "Minimum age to rent: 21"
},
"maxOccupancy": {
"adults": 4,
"guests": 4,
"label": "Max guests:",
"maxAdultsLabel": "(sleeps up to 4 adults)",
"note": null,
"displayText": "Maximum overnight guests: 4 (sleeps up to 4 adults)"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children allowed",
"note": null
},
{
"key": "petsRule",
"label": "No pets",
"note": "No Pets"
},
{
"key": "eventsRule",
"label": "No events",
"note": "No gatherings/parties. City nuisance fine $1000 "
},
{
"key": "smokingRule",
"label": "No smoking",
"note": "No smoking at property"
}
],
"customRules": [
{
"note": "Quiet hours start at 10pm nightly"
}
],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 4:00 PM",
"time": "4:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": "Children allowed: ages 0-17",
"allowed": true,
"childrenNotAllowedNote": null,
"note": null
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": "No gatherings/parties. City nuisance fine $1000 "
},
"smokingRule": {
"displayText": "No smoking allowed",
"allowed": false,
"outside": null,
"inside": null,
"note": "No smoking at property"
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "Your booking will not qualify for a refund based on your trip dates."
}
],
"cancellationPolicyLabel": {
"label": "Non-refundable for your trip dates",
"date": null,
"isFullRefundWindow": false
},
"cancellationTimelinePeriods": [],
"policyType": "MODERATE"
},
"instantBookable": true,
"egratedPropertyManager": null,
"platformPropertyManager": true,
"ipmGuaranteedPricingActive": false,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.1150361.1698574",
"listingNumber": 1150361,
"minStayRange": {
"minStayHigh": 1,
"minStayLow": 1
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": false,
"ownersListingProfile": {
"aboutYou": null,
"storyPhoto": null,
"uniqueBenefits": "Across the street from the Warner Brothers Studios and 1 mile away from the Walt Disney Studios. ",
"whyHere": "One bedroom newly renovated apartment located in the media district of Burbank. Great for business trips, corporate housing, vacations, holiday visits, tours of the Warner Brothers, Universal, and Disney Studios. Has all the essentials of a hotel and more."
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 241.67,
"currency": "USD",
"formattedAmount": "$242",
"pricePeriodDescription": "/night",
"currencySymbol": "$"
},
"propertyId": "1150361",
"id": "20255569",
"propertyManagerMessaging": null,
"propertyType": "Apartment",
"propertyTypeKey": "apartment",
"recentlyAdded": false,
"registrationNumber": "",
"reviewCount": 141,
"sleeps": 4,
"sleepsDisplay": "Sleeps 4",
"spu": "vrbo-1150361-1698574",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/21000000/20260000/20255600/20255569/b0bef7ca.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [],
"bathrooms": {
"full": 1,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [
{
"displayName": "SafeStay (AHLA - USA)",
"displayNamePrefix": "Follows industry health association",
"cleaningStandardHelpUrl": "https://help.vrbo.com/articles/What-are-the-cleaning-standards-for-vacation-rentals"
}
],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"calendar_2023": {
"metadata": "N/A",
"calendar_months": [
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
{
"days": [
{
"date": {
"day": 1,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_MIN_PRIOR_NOTIFICATION",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 6,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 7,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 8,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 9,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 13,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 14,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 4,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 15,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 20,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 21,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 22,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 23,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 24,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 4,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 25,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 10,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 30,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 31,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 10,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 4,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 5,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 6,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 7,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 11,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 5,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 12,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 4,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 3,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 2,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 1,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 18,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 19,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 20,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 21,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 22,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 23,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 24,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 25,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 26,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 27,
"month": 11,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_NOT_AVAILABLE",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 28,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 400,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "INVALID_DUE_TO_CHANGEOVER_EXCLUSION"
},
{
"date": {
"day": 29,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 399,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 398,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 11,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 397,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 396,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 395,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 394,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 393,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 392,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 391,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 390,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 389,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 388,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 387,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 386,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 385,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 384,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 383,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 382,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 381,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 380,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 379,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 378,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 377,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 376,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 375,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 374,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 373,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 372,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 371,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 370,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 369,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 368,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 1,
"maximumStayInDays": 367,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 12,
"year": 2023
}
]
},
"created_at": "2023-08-31T11:59:45.312Z",
"exists": true,
"updated_at": "2023-10-04T11:12:14.787Z",
"vrbo_id": "1150361"
},
...
]
}
}
This endpoint retrieves Airbnb top reviewed short-term rentals based on review quantity for a specific location: city, or a zip code.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| zip_code | Integer | Any postal zip code. | |
| reviews_count | Integer | 30 | Any valid integer to fetch listings counts more than the number. |
| page | Integer | 1 | page number. |
Get VRBO Top Reviewed Homes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed-vrbo?state=CA&city=Burbank")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed-vrbo?state=CA&city=Burbank")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/top-reviewed-vrbo/top-reviewed');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'Burbank'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/top-reviewed-vrbo?state=CA&city=Burbank"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"items_per_page": 10,
"page": 1,
"reviews_count_limit": 30,
"total_pages": 2,
"total_items": 11,
"list": [
{
"propertyTimezone": "America/Los_Angeles",
"address": {
"city": "Burbank",
"country": "US",
"postalCode": "91506",
"stateProvince": "CA"
},
"availabilityUpdated": "2023-07-27",
"averageRating": 4.9006624,
"bedrooms": 0,
"canonicalLink": "https://www.vrbo.com/635249",
"description": "The Space\n\nA short 13 minute walk from beautiful downtown Burbank, the Burbank Sanctuary is a well-appointed and comfortable studio apartment with an elegant boutique touch. Enjoy luxury bedding, abundant amenities, 42\" flat screen and full kitchen. Experience five diamond standards with at home comfort, privacy and security. An ALDI supermarket is at the other end of the street.\n\nThe Burbank Sanctuary is a downstairs apartment. While the vast majority of our guests love the apartment, it's not for very light sleepers.\n\nRelaxation and comfort will come easy during your stay with us. Your experience includes queen-size luxury bedding, unlimited hot showers, free wifi and digital 55\" smart widescreen with Netflix, Amazon, Hulu and Pandora. There is no local TV.\n\nYou will also have a full size kitchen at your fingertips with all the cooking comforts you could wish for. A full size fridge, unlimited ice, soap, shampoo and towels are among the many delightful amenities available during your stay at the Burbank Sanctuary.\n\nEnjoy accommodations and VIP treatment of a boutique hotel with at home comfort, privacy and security.\n\nThe building is a charming and cozy 5-unit apartment residence. There is a secluded side-entrance for maximum privacy and home-like comfort.\n\nGuest Access\n\nAmple unrestricted street parking is available, no permits or pesky meter feeding required. Driveway parking is reserved for our permanent residents. Everything is digital, no keys to weigh you down during your time out and about. I set a new code for each guest which assures total privacy and security during your stay.\n\nInteraction with Guests\n\nDepending upon the time of year, Self check-in is available or you may meet and greet with your host, sharing tips and information about the apartment and local area. \n\nThe Neighborhood \n\nI love the Magnolia Park area of Burbank. This property sits next to the Chandler bike path and is walking distance from the downtown Burbank area. There's convenient food, markets and plenty of shopping nearby.\n\nGetting Around\n\nI always recommend rideshares such as Uber or Lyft, but public transportation is equally within reach.\n\nOther Things to Note\n\nI have been in the hospitality industry since 2005. I owned and operated two hotels and I have traveled extensively. My sensibilities are for the traveler and the amenities included in your stay meet my high standards for quality hotel accommodations. In addition, the Burbank Sanctuary offers the fastest and most reliable internet available in the city.\n\nHouse Rules \n\nI cater to the nonsmoker without pets. Smoking is not permitted inside the apartment nor on the property. Our other tenants dislike the aroma. We love small non-human friends, but unfortunately they are not allowed at the property. We observe quiet time from 10pm to 8am and kindly request that you do the same by turning down your music or television during these times.",
"detailPageUrl": "/635249?unitId=1183030&childrenCount=0&noDates=true",
"featuredAmenities": [
"INTERNET",
"AIR_CONDITIONING",
"TV",
"CABLE",
"PARKING",
"NO_SMOKING",
"HEATER"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": true,
"latitude": 34.177985,
"longitude": -118.320758
},
"geography": {
"description": "Burbank, Los Angeles County, California, United States of America",
"ids": [
{
"type": "LBS",
"value": "3b66d3bc-445d-4a3e-a623-8a4417745d1d"
}
],
"name": "Burbank",
"relatedGeographies": null,
"types": [
"locality"
],
"location": {
"lat": 34.18084,
"lng": -118.308968
}
},
"propertyManagerProfile": null,
"headline": "The Sanctuary - Be Pampered - Full Kitchen",
"houseRules": {
"children": {
"label": "Children not allowed",
"note": null,
"allowed": false
},
"events": {
"label": "No events",
"note": null,
"allowed": false
},
"smoking": {
"label": "No smoking",
"note": null,
"allowed": false
},
"pets": {
"label": "No pets",
"note": null,
"allowed": false
},
"unitUrl": "/units/0004/6ad4b648-15a1-4694-b38c-255370e5e59a",
"checkInTime": "4:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": 18,
"displayText": "Minimum age to rent: 18"
},
"maxOccupancy": {
"adults": null,
"guests": 2,
"label": "Max guests:",
"maxAdultsLabel": null,
"note": null,
"displayText": "Maximum overnight guests: 2"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children not allowed",
"note": null
},
{
"key": "petsRule",
"label": "No pets",
"note": null
},
{
"key": "eventsRule",
"label": "No events",
"note": null
},
{
"key": "smokingRule",
"label": "No smoking",
"note": null
}
],
"customRules": [],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 4:00 PM",
"time": "4:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": "No children allowed",
"allowed": false,
"childrenNotAllowedNote": null,
"note": null
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": null
},
"smokingRule": {
"displayText": "No smoking allowed",
"allowed": false,
"outside": null,
"inside": null,
"note": null
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "<strong>100% refund of amount paid</strong> if you cancel at least 30 days before check-in."
},
{
"label": "<strong>50% refund of amount paid</strong> (minus the service fee) if you cancel at least 14 days before check-in."
},
{
"label": "<strong>No refund</strong> if you cancel less than 14 days before check-in."
}
],
"cancellationPolicyLabel": {
"label": "<strong>Free cancellation</strong> up to",
"date": "30 days before check-in",
"isFullRefundWindow": true
},
"cancellationTimelinePeriods": [
{
"timelineLabel": "30 days before check-in",
"refundPercent": 100,
"refundWindowLabel": "100% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "14 days before check-in",
"refundPercent": 50,
"refundWindowLabel": "50% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "Check in",
"refundPercent": 0,
"refundWindowLabel": "No refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": "KEY"
}
],
"policyType": "MODERATE"
},
"instantBookable": false,
"egratedPropertyManager": null,
"platformPropertyManager": false,
"ipmGuaranteedPricingActive": false,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.635249.1183030",
"listingNumber": 635249,
"minStayRange": {
"minStayHigh": 30,
"minStayLow": 30
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": true,
"ownersListingProfile": {
"aboutYou": "My sensibilities are for the traveler and the amenities meet my high standards for a quality hotel stay. I offer the fastest internet available in the city.",
"storyPhoto": null,
"uniqueBenefits": null,
"whyHere": null
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 165,
"currency": "USD",
"formattedAmount": "$165",
"pricePeriodDescription": "avg/night",
"currencySymbol": "$"
},
"propertyId": "635249",
"id": "33505162",
"propertyManagerMessaging": null,
"propertyType": "Apartment",
"propertyTypeKey": "apartment",
"recentlyAdded": false,
"registrationNumber": "",
"reviewCount": 151,
"sleeps": 2,
"sleepsDisplay": "Sleeps 2",
"spu": "vrbo-635249-1183030",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/34000000/33510000/33505200/33505162/e73f620d.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [
"https://youtube.com/watch?v=GIiO5vRz-T8"
],
"bathrooms": {
"full": 1,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"calendar_2023": {
"metadata": "N/A",
"calendar_months": [
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
{
"days": [
{
"date": {
"day": 1,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 186,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 185,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 184,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_MIN_PRIOR_NOTIFICATION",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 183,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 182,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 181,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 180,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 179,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 178,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 177,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 176,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 175,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 174,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 173,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 172,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 171,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 170,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 169,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 168,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 167,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 166,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 165,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 9,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 164,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 163,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 162,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 161,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 160,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 159,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 158,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 157,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 156,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 155,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 154,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 153,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 152,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 151,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 150,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 149,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 148,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 147,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 146,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 145,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 144,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 143,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 142,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 141,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 140,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 139,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 138,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 137,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 136,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 135,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 134,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 10,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 133,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 132,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 131,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 130,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 129,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 128,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 127,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 126,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 125,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 124,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 123,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 122,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 121,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 120,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 119,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 118,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 117,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 116,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 115,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 114,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 113,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 112,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 111,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 110,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 109,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 108,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 107,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 106,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 105,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 104,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 11,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 103,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 102,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 101,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 100,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 99,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 98,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 97,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 96,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 95,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 94,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 93,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 92,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 91,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 90,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 89,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 88,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 87,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 86,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 85,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 84,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 83,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 82,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 81,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 80,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 79,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 78,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 77,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 76,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 75,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 74,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 73,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 12,
"year": 2023
}
]
},
"created_at": "2023-08-31T12:00:07.676Z",
"exists": true,
"updated_at": "2023-09-11T17:16:58.661Z",
"vrbo_id": "635249"
},
...
]
}
}
This endpoint retrieves VRBO top reviewed short-term rentals based on review quantity for a specific location: city, or a zip code.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/top-reviewed-vrbo/top-reviewed
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| zip_code | Integer | Any postal zip code. | |
| reviews_count | Integer | 30 | Any valid integer to fetch listings counts more than the number. |
| page | Integer | 1 | page number. |
Get Airbnb Newly Listed Homes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed?state=CA&city=San%20Francisco")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed?state=CA&city=San%20Francisco")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'San%20Francisco'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed?state=CA&city=San%20Francisco"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"items_per_page": 10,
"page": 1,
"reviews_count_limit": 30,
"total_pages": 2,
"total_items": 11,
"list": [
{
"propertyTimezone": "America/Los_Angeles",
"address": {
"city": "Burbank",
"country": "US",
"postalCode": "91506",
"stateProvince": "CA"
},
"availabilityUpdated": "2023-07-27",
"averageRating": 4.9006624,
"bedrooms": 0,
"canonicalLink": "https://www.vrbo.com/635249",
"description": "The Space\n\nA short 13 minute walk from beautiful downtown Burbank, the Burbank Sanctuary is a well-appointed and comfortable studio apartment with an elegant boutique touch. Enjoy luxury bedding, abundant amenities, 42\" flat screen and full kitchen. Experience five diamond standards with at home comfort, privacy and security. An ALDI supermarket is at the other end of the street.\n\nThe Burbank Sanctuary is a downstairs apartment. While the vast majority of our guests love the apartment, it's not for very light sleepers.\n\nRelaxation and comfort will come easy during your stay with us. Your experience includes queen-size luxury bedding, unlimited hot showers, free wifi and digital 55\" smart widescreen with Netflix, Amazon, Hulu and Pandora. There is no local TV.\n\nYou will also have a full size kitchen at your fingertips with all the cooking comforts you could wish for. A full size fridge, unlimited ice, soap, shampoo and towels are among the many delightful amenities available during your stay at the Burbank Sanctuary.\n\nEnjoy accommodations and VIP treatment of a boutique hotel with at home comfort, privacy and security.\n\nThe building is a charming and cozy 5-unit apartment residence. There is a secluded side-entrance for maximum privacy and home-like comfort.\n\nGuest Access\n\nAmple unrestricted street parking is available, no permits or pesky meter feeding required. Driveway parking is reserved for our permanent residents. Everything is digital, no keys to weigh you down during your time out and about. I set a new code for each guest which assures total privacy and security during your stay.\n\nInteraction with Guests\n\nDepending upon the time of year, Self check-in is available or you may meet and greet with your host, sharing tips and information about the apartment and local area. \n\nThe Neighborhood \n\nI love the Magnolia Park area of Burbank. This property sits next to the Chandler bike path and is walking distance from the downtown Burbank area. There's convenient food, markets and plenty of shopping nearby.\n\nGetting Around\n\nI always recommend rideshares such as Uber or Lyft, but public transportation is equally within reach.\n\nOther Things to Note\n\nI have been in the hospitality industry since 2005. I owned and operated two hotels and I have traveled extensively. My sensibilities are for the traveler and the amenities included in your stay meet my high standards for quality hotel accommodations. In addition, the Burbank Sanctuary offers the fastest and most reliable internet available in the city.\n\nHouse Rules \n\nI cater to the nonsmoker without pets. Smoking is not permitted inside the apartment nor on the property. Our other tenants dislike the aroma. We love small non-human friends, but unfortunately they are not allowed at the property. We observe quiet time from 10pm to 8am and kindly request that you do the same by turning down your music or television during these times.",
"detailPageUrl": "/635249?unitId=1183030&childrenCount=0&noDates=true",
"featuredAmenities": [
"INTERNET",
"AIR_CONDITIONING",
"TV",
"CABLE",
"PARKING",
"NO_SMOKING",
"HEATER"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": true,
"latitude": 34.177985,
"longitude": -118.320758
},
"geography": {
"description": "Burbank, Los Angeles County, California, United States of America",
"ids": [
{
"type": "LBS",
"value": "3b66d3bc-445d-4a3e-a623-8a4417745d1d"
}
],
"name": "Burbank",
"relatedGeographies": null,
"types": [
"locality"
],
"location": {
"lat": 34.18084,
"lng": -118.308968
}
},
"propertyManagerProfile": null,
"headline": "The Sanctuary - Be Pampered - Full Kitchen",
"houseRules": {
"children": {
"label": "Children not allowed",
"note": null,
"allowed": false
},
"events": {
"label": "No events",
"note": null,
"allowed": false
},
"smoking": {
"label": "No smoking",
"note": null,
"allowed": false
},
"pets": {
"label": "No pets",
"note": null,
"allowed": false
},
"unitUrl": "/units/0004/6ad4b648-15a1-4694-b38c-255370e5e59a",
"checkInTime": "4:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": 18,
"displayText": "Minimum age to rent: 18"
},
"maxOccupancy": {
"adults": null,
"guests": 2,
"label": "Max guests:",
"maxAdultsLabel": null,
"note": null,
"displayText": "Maximum overnight guests: 2"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children not allowed",
"note": null
},
{
"key": "petsRule",
"label": "No pets",
"note": null
},
{
"key": "eventsRule",
"label": "No events",
"note": null
},
{
"key": "smokingRule",
"label": "No smoking",
"note": null
}
],
"customRules": [],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 4:00 PM",
"time": "4:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": "No children allowed",
"allowed": false,
"childrenNotAllowedNote": null,
"note": null
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": null
},
"smokingRule": {
"displayText": "No smoking allowed",
"allowed": false,
"outside": null,
"inside": null,
"note": null
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "<strong>100% refund of amount paid</strong> if you cancel at least 30 days before check-in."
},
{
"label": "<strong>50% refund of amount paid</strong> (minus the service fee) if you cancel at least 14 days before check-in."
},
{
"label": "<strong>No refund</strong> if you cancel less than 14 days before check-in."
}
],
"cancellationPolicyLabel": {
"label": "<strong>Free cancellation</strong> up to",
"date": "30 days before check-in",
"isFullRefundWindow": true
},
"cancellationTimelinePeriods": [
{
"timelineLabel": "30 days before check-in",
"refundPercent": 100,
"refundWindowLabel": "100% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "14 days before check-in",
"refundPercent": 50,
"refundWindowLabel": "50% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "Check in",
"refundPercent": 0,
"refundWindowLabel": "No refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": "KEY"
}
],
"policyType": "MODERATE"
},
"instantBookable": false,
"egratedPropertyManager": null,
"platformPropertyManager": false,
"ipmGuaranteedPricingActive": false,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.635249.1183030",
"listingNumber": 635249,
"minStayRange": {
"minStayHigh": 30,
"minStayLow": 30
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": true,
"ownersListingProfile": {
"aboutYou": "My sensibilities are for the traveler and the amenities meet my high standards for a quality hotel stay. I offer the fastest internet available in the city.",
"storyPhoto": null,
"uniqueBenefits": null,
"whyHere": null
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 165,
"currency": "USD",
"formattedAmount": "$165",
"pricePeriodDescription": "avg/night",
"currencySymbol": "$"
},
"propertyId": "635249",
"id": "33505162",
"propertyManagerMessaging": null,
"propertyType": "Apartment",
"propertyTypeKey": "apartment",
"recentlyAdded": false,
"registrationNumber": "",
"reviewCount": 151,
"sleeps": 2,
"sleepsDisplay": "Sleeps 2",
"spu": "vrbo-635249-1183030",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/34000000/33510000/33505200/33505162/e73f620d.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [
"https://youtube.com/watch?v=GIiO5vRz-T8"
],
"bathrooms": {
"full": 1,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"calendar_2023": {
"metadata": "N/A",
"calendar_months": [
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
"N/A",
{
"days": [
{
"date": {
"day": 1,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 9,
"year": 2023
},
"available": false,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 0,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 186,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 185,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_BEING_IN_PAST",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 184,
"stayIncrementInDays": 1
},
"checkinValidity": "INVALID_DUE_TO_MIN_PRIOR_NOTIFICATION",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 183,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 182,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 181,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 180,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 179,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 178,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 177,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 176,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 175,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 174,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 173,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 172,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 171,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 170,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 169,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 168,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 167,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 166,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 9,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 165,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 9,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 164,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 163,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 162,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 161,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 160,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 159,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 158,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 157,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 156,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 155,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 154,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 153,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 152,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 151,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 150,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 149,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 148,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 147,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 146,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 145,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 144,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 143,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 142,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 141,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 140,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 139,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 138,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 137,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 136,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 135,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 10,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 134,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 10,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 133,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 132,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 131,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 130,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 129,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 128,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 127,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 126,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 125,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 124,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 123,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 122,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 121,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 120,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 119,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 118,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 117,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 116,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 115,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 114,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 113,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 112,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 111,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 110,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 109,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 108,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 107,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 106,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 105,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 11,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 104,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 11,
"year": 2023
},
{
"days": [
{
"date": {
"day": 1,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 103,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 2,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 102,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 3,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 101,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 4,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 100,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 5,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 99,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 6,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 98,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 7,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 97,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 8,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 96,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 9,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 95,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 10,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 94,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 11,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 93,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 12,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 92,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 13,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 91,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 14,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 90,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 15,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 89,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 16,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 88,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 17,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 87,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 18,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 86,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 19,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 85,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 20,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 84,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 21,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 83,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 22,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 82,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 23,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 81,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 24,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 80,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 25,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 79,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 26,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 78,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 27,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 77,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 28,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 76,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 29,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 75,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 30,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 74,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
},
{
"date": {
"day": 31,
"month": 12,
"year": 2023
},
"available": true,
"stayConstraints": {
"minimumStayInDays": 30,
"maximumStayInDays": 73,
"stayIncrementInDays": 1
},
"checkinValidity": "VALID",
"checkoutValidity": "VALID"
}
],
"month": 12,
"year": 2023
}
]
},
"created_at": "2023-08-31T12:00:07.676Z",
"exists": true,
"updated_at": "2023-09-11T17:16:58.661Z",
"vrbo_id": "635249"
},
...
]
}
}
This endpoint retrieves all Airbnb short-term rentals that are recently listed for a specific location: city, or a zip code.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| zip_code | Integer | Any postal zip code. | |
| page | Integer | 1 | Page number |
Get VRBO Newly Listed Homes
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed-vrbo?state=CA&city=Burbank")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed-vrbo?state=CA&city=Burbank")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed-vrbo');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA',
'city' => 'Burbank'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed?state=CA&city=Burbank"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"items_per_page": 10,
"page": 1,
"total_pages": 1,
"total_items": 3,
"list": [
{
"propertyTimezone": "America/Los_Angeles",
"address": {
"city": "Burbank",
"country": "US",
"postalCode": "91502",
"stateProvince": "CA"
},
"availabilityUpdated": "2023-09-11",
"averageRating": 0,
"bedrooms": 2,
"canonicalLink": "https://www.vrbo.com/3536272",
"description": "- (RLNE8088308) Available for lease in the Burbank Collection Luxury Condos is an immaculate 2BD 2BA unit overlooking the glistening pool. 1, 100 SF in size, this well-kept, fully furnished unit features high ceilings, an abundance of light, and an open floor plan w/ a dining area. The kitchen features stainless appliances (oven, range, microwave, dishwasher, refrigerator) and a peninsula style island w/ granite counters perfect for entertaining. The master suites include walk-in closets and luxurious master bath with dual vanities, soaking tub and separate shower. Laundry is inside the unit and there is a private opera patio for added enjoyment. Building amenities include controlled access, a pool, clubhouse with billiard table, bocce ball court, putting green, BBQ area with fire pit, well equipped gym and 2 side-by-side secured parking spaces. Burbank living at its finest awaits! Do not miss the opportunity to be in the heart of Downtown Burbank near Disney, NBC, Warner Bros, Universal, Nickelodeon Studios with easy access to the 5 freeway and the Bob Hope airport, trendy restaurants, shops, Burbank Town Center and the Empire Center. 052691502JP23075129 Please call Listing provided by Artak Dovlatyan of Specialized Realty (LA State License 01250473) 818Leases.com Houzlet publishes listings on Vrbo; which in turn, allows tenants to instantly rent seasonal rentals. Houzlet’s properties are managed by licensed real estate agents. Although the property is an instant rental, it’s possible there can be another pending application. If the home is not available, we can offer you another suitable option or you can cancel for free. \n\n\nHouse Rules. \nThe refundable policy is as follows:\n\n1.\t100% refund less the service fee if you cancel 30 days prior to move-in.\n2.\t100% refund less the service fee if you are not approved to rent or the home is unavailable. \n3.\tNot refundable if you are within 30 days from arrival or if you signed the leased with the Agent (whichever comes first).\n\nPlease note this property may require a tenant screening at an extra cost to you. You will be required to sign a lease with the landlord. Security deposit vary and range from USD 500 up to one full month rent that is payable directly to the landlord.",
"detailPageUrl": "/3536272?unitId=4109418&childrenCount=0&noDates=true",
"featuredAmenities": [
"INTERNET",
"AIR_CONDITIONING",
"WASHER_DRYER",
"PARKING",
"NO_SMOKING"
],
"firstLiveInLastThirtyDays": false,
"geoCode": {
"exact": true,
"latitude": 34.181442,
"longitude": -118.311191
},
"geography": {
"description": "Downtown Burbank, Burbank, California, United States of America",
"ids": [
{
"type": "LBS",
"value": "8adba945-cabb-4399-b6de-4af55348bab7"
}
],
"name": "Downtown Burbank",
"relatedGeographies": null,
"types": [
"neighborhood"
],
"location": {
"lat": 34.182269,
"lng": -118.310087
}
},
"propertyManagerProfile": null,
"headline": "2 Bedroom Single_family (626774) by Houzlet",
"houseRules": {
"children": {
"label": "Children allowed",
"note": null,
"allowed": true
},
"events": {
"label": "No events",
"note": null,
"allowed": false
},
"smoking": {
"label": "No smoking",
"note": null,
"allowed": false
},
"pets": {
"label": "No pets",
"note": null,
"allowed": false
},
"unitUrl": "/units/0004/a26f8b00-9251-4fb2-a2e4-4ab72136219a",
"checkInTime": "3:00 PM",
"checkOutTime": "11:00 AM",
"minimumAge": {
"label": "Minimum age of primary renter:",
"note": null,
"minimumAge": null,
"displayText": null
},
"maxOccupancy": {
"adults": 4,
"guests": 4,
"label": "Max guests:",
"maxAdultsLabel": "(sleeps up to 4 adults)",
"note": null,
"displayText": "Maximum overnight guests: 4 (sleeps up to 4 adults)"
},
"standardRules": [
{
"key": "childrenRule",
"label": "Children allowed",
"note": null
},
{
"key": "petsRule",
"label": "No pets",
"note": null
},
{
"key": "eventsRule",
"label": "No events",
"note": null
},
{
"key": "smokingRule",
"label": "No smoking",
"note": null
}
],
"customRules": [],
"label": "House Rules",
"checkInRule": {
"label": "<strong>Check in</strong> after 3:00 PM",
"time": "3:00 PM"
},
"checkOutRule": {
"label": "<strong>Check out</strong> before 11:00 AM",
"time": "11:00 AM"
},
"childrenRule": {
"displayText": null,
"allowed": true,
"childrenNotAllowedNote": null,
"note": null
},
"petsRule": {
"displayText": "No pets allowed",
"allowed": false,
"note": null
},
"eventsRule": {
"displayText": "No events allowed",
"allowed": false,
"maxEventAttendeesLabel": null,
"allowedEventsNote": null,
"note": null
},
"smokingRule": {
"displayText": "No smoking allowed",
"allowed": false,
"outside": null,
"inside": null,
"note": null
}
},
"cancellationPolicy": {
"cancellationPolicyPeriods": [
{
"label": "<strong>100% refund of amount payable</strong> if you cancel at least 30 days before check-in."
},
{
"label": "<strong>50% refund of amount payable</strong> (minus the service fee) if you cancel at least 14 days before check-in."
},
{
"label": "<strong>No refund</strong> if you cancel less than 14 days before check-in."
}
],
"cancellationPolicyLabel": {
"label": "<strong>Free cancellation</strong> up to",
"date": "30 days before check-in",
"isFullRefundWindow": true
},
"cancellationTimelinePeriods": [
{
"timelineLabel": "30 days before check-in",
"refundPercent": 100,
"refundWindowLabel": "100% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "14 days before check-in",
"refundPercent": 50,
"refundWindowLabel": "50% refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": null
},
{
"timelineLabel": "Check in",
"refundPercent": 0,
"refundWindowLabel": "No refund",
"shortDateLocalized": null,
"isPast": false,
"isActive": false,
"iconCode": "KEY"
}
],
"policyType": "MODERATE"
},
"instantBookable": true,
"egratedPropertyManager": null,
"platformPropertyManager": false,
"ipmGuaranteedPricingActive": true,
"isBasicListing": false,
"isCrossSell": false,
"isSubscription": false,
"listingId": "321.3536272.4109418",
"listingNumber": 3536272,
"minStayRange": {
"minStayHigh": 30,
"minStayLow": 30
},
"multiUnitProperty": false,
"onlineBookable": true,
"ownerManaged": false,
"ownersListingProfile": {
"aboutYou": null,
"storyPhoto": null,
"uniqueBenefits": null,
"whyHere": null
},
"payPerBooking": true,
"petsAllowed": false,
"priceSummary": {
"amount": 178,
"currency": "USD",
"formattedAmount": "$178",
"pricePeriodDescription": "avg/night",
"currencySymbol": "$"
},
"propertyId": "3536272",
"id": "96433850",
"propertyManagerMessaging": null,
"propertyType": "Apartment",
"propertyTypeKey": "apartment",
"recentlyAdded": true,
"registrationNumber": "320623",
"reviewCount": 0,
"sleeps": 4,
"sleepsDisplay": "Sleeps 4",
"spu": "vrbo-3536272-4109418",
"status": "AVAILABLE",
"takesInquiries": true,
"testListing": false,
"thumbnailUrl": "https://media.vrbo.com/lodging/97000000/96440000/96433900/96433850/w1016h675x4y4-cc2e3dcb.TREATMENT.jpg",
"travelerFeeEligible": true,
"videoUrls": [],
"bathrooms": {
"full": 2,
"half": 0,
"toiletOnly": 0
},
"industryHealthAssociations": [],
"regionalHealthGuidelines": [],
"impressum": null,
"allFeaturedAmenitiesRanked": [
"INTERNET",
"PETS",
"AIR_CONDITIONING",
"POOL",
"WHEELCHAIR",
"HEATER",
"FIREPLACE",
"CABLE",
"CHILDREN_WELCOME",
"WASHER_DRYER",
"HOT_TUB",
"PARKING",
"TV",
"NO_SMOKING"
],
"created_at": "2023-09-11T17:15:24.668Z",
"vrbo_id": "3536272"
},
...
]
}
}
This endpoint retrieves all VRBO short-term rentals that are recently listed for a specific location: city, or a zip code.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/airbnb-property/newly-listed
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| country | String | US | Country ISO-3166 Alpha-2code, e.g. GB, ES. |
| city | String | A specific city you're looking for. | |
| zip_code | Integer | Any postal zip code. | |
| page | Integer | 1 | Page number |
Long Term Rentals
The Traditional Property Object
The Traditional Property Object:
{
"id": 5637233,
"title": "Condominium, Traditional - Los Angeles (City), CA",
"lon": -118.381,
"lat": 34.0568,
"state": "CA",
"city": "Los Angeles",
"county": "LOS ANGELES",
"neighborhood": {
"id": 275024,
"name": "Pico-Robertson",
"country": "United States",
"city": "Los Angeles",
"state": "CA",
"latitude": 34.053022,
"longitude": -118.383312,
"singleHomeValue": 1237000,
"mashMeter": 66.99,
"description": null,
"is_village": 0
},
"description": "It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.",
"price": 3300,
"baths": 1,
"beds": 1,
"num_of_units": null,
"sqft": 1028,
"lot_size": 12787,
"days_on_market": 3,
"year_built": 1981,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "19508890",
"image": "https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/Properties/property-default.png",
"extra_images": [
"https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/Properties/property-default.png",
"https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/Properties/property-default.png",
"https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/Properties/property-default.png"
],
"zipcode": "90035",
"address": "1110 South SHENANDOAH Street #2",
"type": "apartment",
"property_type": "Rental",
"property_sub_type": "Condominium",
"source": "Compass",
"architecture_style": "New Traditional",
"has_pool": null,
"is_water_front": null,
"heating_system": "Central Furnace",
"cooling_system": "Central A/C",
"view_type": null,
"schools": null,
"parcel_number": "4332019046",
"neighborhood_id": 275024,
"modification_timestamp": "2019-09-11T08:33:26.000Z",
"created_at": "2019-09-12T04:50:05.000Z",
"updated_at": "2019-09-12T05:31:02.000Z",
"agents": [
{
"id": 101289,
"agent_id": 101289,
"property_id": 5637233,
"created_at": "2017-06-21T09:37:15.000Z",
"updated_at": "2019-09-01T09:43:53.000Z",
"first_name": "Nikki",
"last_name": "Hochstein",
"email": "[email protected]",
"primary_phone": "(310) 968-1116",
"phone_number": "(310) 437-7500",
"role": "Listing",
"office_id": 1643,
"website": "https://www.compass.com/",
"address": "2113-2115 Main St.",
"city": "SANTA MONICA",
"state": "CA",
"county": "Los Angeles",
"zip_code": "90405",
"company": "Compass",
"image": "https://bc9f40b414b80f1ce90f-212b46b1c531b50ebb00763170d70160.ssl.cf5.rackcdn.com/Properties/property-default.png",
"real_estate_licence": "01338003",
"years_of_experience": null,
"areas_served": null,
"agent_specialities": null,
"agent_experience": null,
"summary": null,
"title": null,
"mls_id": null,
"price_range": null,
"sold_properties": null,
"active_properties": null
}
]
}
We currently maintain over 1.5M+ rental listings, with active listings added daily from MLS sources nationwide.
Traditional Property Data Dictionary
| Attribute | Definition | Possible Returns |
|---|---|---|
| id | Mashvisor Traditional Property ID | Integer |
| title | A short title for the property | String |
| description | Longer description of the property | String |
| type | The property sub type as provided by the MLS provider | String Possible values: 1. single_home 2.apartment 3.townhouse 4.Multi Family 5. Other |
| property_type | The property main type as provided by the MLS provider | String Possible values: * Commercial * Lots And Land * MultiFamily * Other * Rental * Residential |
| property_sub_type | The property property listing category | String Possible values: * Apartment * Condominium * Duplex * Other * Quadruplex * Single Family Attached * Single Family Detached * Townhouse * Triplex |
| address | The full street address of the property, ex: 36981 Newark Blvd #B |
String |
| city | The city where the property is located | String |
| state* | The state where the property is located | String |
| county | County where a property is located | String |
| zipcode | Postal code where a property is located | Integer |
| neighborhood | The neighborhood where the property is located | String |
| beds | Property full bedrooms count | Integer |
| baths | Property full bathrooms count | Integer |
| num_of_units | Number of units in the property, only exists with multifamily properties | Integer |
| sqft | Property living area in square feet unit | Integer |
| lot_size | The lot size of the property in square feet unit | Integer |
| parcel_number | The property APN assigned by tax assessor | String |
| mls_id | The MLS ID of the property | String |
| year_built | The year was constructed in | Integer |
| walkscore | The walkscore value of the property address | Integer |
| tax | The last knows tax amount | Integer |
| tax_history | Collection of all the taxes reported for a property | JSON Array |
| price | The listed rent price for the property | Integer |
| price_per_sqft | Price per sqft value | Float |
| days_on_market | Number of days since the property was on market for sale | Integer |
| parking_spots | Number of parking spots | Integer |
| parking_type | An indicator for the parking type | Integer |
| url | The URL of the property | String |
| source | The name of the entity authorized the property to be syndicated | String |
| lat | Latitude of the property | Float |
| lon | Longitude of the property | Float |
| heating_system | The heating system type | String |
| cooling_system | The cooling system type | String |
| neighborhood_id | The property neighborhood ID | Integer |
| schools | Collection of all the schools nearby a property | JSON Array |
| view_type | The property view type | String Possible values: * Airport * Average * Bluff * Bridge * Canyon * City * Desert * Forest * Golf Course * Harbor * Hills * Lake * Marina * Mountain * None * Ocean * Other * Panorama * Park * Ravine * River * Territorial * Unknown * Valley * Vista * Water |
| image | The property main image URL | String |
| extra_images | List of the images associated with a property | String |
| videos | Videos associated with a property | String |
| virtual_tours | Virtual tour link for a property | String |
| updated_at | Date it’s updated in the database | Date |
| agent_id | The property’s agent ID associated to it | Integer |
| appliances | A description of the appliance as provided | JSON Array Possible values: * BarbequeorGrill * CoffeeSystem * CoffeeSystem-Roughin * Cooktop * Cooktop-Electric * Cooktop-Electric2burner * Cooktop-Electric6burner * Cooktop-Gas * Cooktop-Gas2burner * Cooktop-Gas5burner * Cooktop-Gas6burner * Cooktop-GasCustom * Cooktop-Induction * Cooktop-Induction2burner * Cooktop-Induction6burner * Dishwasher * Dishwasher-Drawer * Dishwasher-Twoormore * Dryer * Dryer-Dualfuel * Dryer-Electric110V * Dryer-Electric220V * Dryer-Gas * Dryer-Gasroughin * Freezer * Freezer-Compact * Freezer-Upright * GarbageDisposer * IceMaker * Microwave * None * Other * Oven * Oven-Convection * Oven-Double * Oven-DoubleElectric * Oven-DoubleGas * Oven-Gas * Oven-Gas3wide * Oven-Self-Cleaning * Oven-Steam * Oven-Twin * Oven-TwinElectric * Oven-TwinGas * Oven-TwinGas3wide * Oven-TwinMixed * Range * Range-BuiltIn * Range-Dual * Range-Dual10burner * Range-Dual6burner * Range-Dual8burner * Range-Electric * Range-Gas * Range-Gas10burner * Range-Gas6burner * Range-Gas8burner * Range-Induction * Range-Other * Rangetop-Electric * Rangetop-Electric2burner * Rangetop-Electric6burner * Rangetop-Gas * Rangetop-Gas10burner * Rangetop-Gas2burner * Rangetop-Gas4burnercompact * Rangetop-Gas6burner * Rangetop-Gas8burner * Rangetop-GasCustom * Rangetop-Induction * Rangetop-Induction2burner * Rangetop-Induction6burner * Refrigerator * Refrigerator-Bar * Refrigerator-Built-in * Refrigerator-Built-inWithPlumbing * Refrigerator-Drawer * Refrigerator-SidebySide * Refrigerator-Undercounter * Refrigerator-WineStorage * Refrigerator-WithPlumbing * TrashCompactor * VacuumSystem * VacuumSystem-Roughin * VentHood * VentHood10burner * VentHood6burner * VentHood8burner * WarmingDrawer * Washer * Washer-Frontload * Washer-Steamer * Washer-Topload * Washer/DryerCombo * Washer/DryerStack * Water-Filter * Water-InstantHot * Water-Purifier * Water-Softener |
| detailed_characteristics | Detailed characteristics | JSON Array |
Get Traditional Property
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/traditional-property?id=5637233&state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/traditional-property?id=5637233&state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/traditional-property');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'CA',
'id' => 5637233
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/traditional-property?id=5637233&state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"id": 5637233,
"title": "Condominium, Traditional - Los Angeles (City), CA",
"lon": -118.381,
"lat": 34.0568,
"state": "CA",
"city": "Los Angeles",
"county": "LOS ANGELES",
"neighborhood": {
"id": 275024,
"name": "Pico-Robertson",
"country": "United States",
"city": "Los Angeles",
"state": "CA",
"latitude": 34.053022,
"longitude": -118.383312,
"singleHomeValue": 1410500,
"mashMeter": 29,
"description": null,
"is_village": 0
},
"description": "Bright and modern one bedroom condo for lease located in convenient and desirable Beverly Hills adjacent location. Don't miss this very spacious unit with open floor plan and extra large patio for additional outdoor living space. Features include: Wood floors, recessed lighting, clean kitchen with stainless appliances, remodeled bathroom and walk in closet. Property has central heat and air, in unit washer/dryer and 2 parking spaces. Amazing location near Cedars-Sinai, Century City and all the parks, shops and restaurants of Beverly Hills.",
"price": 3150,
"baths": 1,
"full_baths": 1,
"beds": 1,
"num_of_units": null,
"sqft": 1028,
"lot_size": 12787,
"days_on_market": 24,
"year_built": 1981,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "19-508890",
"image": "http://photos.listhub.net/CLAWCA/19-508890/1?lm=20191002T140909",
"extra_images": [
"http://photos.listhub.net/CLAWCA/19-508890/1?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/2?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/3?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/4?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/5?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/6?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/7?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/8?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/9?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/10?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/11?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/12?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/13?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/14?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/15?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/16?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/17?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/18?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/19?lm=20191002T140909",
"http://photos.listhub.net/CLAWCA/19-508890/20?lm=20191002T140909"
],
"zipcode": "90035",
"address": "1110 South SHENANDOAH Street #2",
"type": "apartment",
"property_type": "Rental",
"property_sub_type": "Condominium",
"status": "inactive",
"broker_name": "Compass",
"broker_number": null,
"broker_url": "https://www.compass.com/",
"source": "Compass",
"mls_name": "Combined LA Westside Multiple Listing Service, Inc",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": null,
"is_water_front": null,
"heating_system": "Central Furnace",
"cooling_system": "Central A/C",
"view_type": null,
"schools": null,
"characteristics": null,
"directions": null,
"parcel_number": "4332019046",
"neighborhood_id": 275024,
"url": "https://listings.listhub.net/pages/CLAWCA/19-508890/?channel=mashv",
"disclaimer": null,
"listing_date": "2019-09-08T22:00:00.000Z",
"modification_timestamp": "2019-09-30T15:29:11.000Z",
"created_at": "2019-09-12T02:50:05.000Z",
"updated_at": "2019-10-03T04:30:23.000Z",
"agents": [
{
"id": 101289,
"agent_id": 101289,
"property_id": 5637233,
"created_at": "2017-06-21T07:37:15.000Z",
"updated_at": "2025-11-24T17:20:23.000Z",
"first_name": "Nikki",
"last_name": "Hochstein",
"full_name": "Nikki Hochstein",
"email": "[email protected]",
"primary_phone": "(310) 968-1116",
"phone_number": "(310) 437-7500",
"role": "Listing",
"office_id": 203,
"website": "https://www.westsideaddress.com",
"address": "2113-2115 Main St. ",
"city": "Santa Monica",
"state": "CA",
"county": "Los Angeles",
"zip_code": "90405",
"company": "Compass",
"image": "http://brokerlogos.listhub.net/CLAWCA/acbfbc71874811e5803c125f38ce48fb/20160601185736249.png",
"real_estate_licence": "01338003",
"years_of_experience": null,
"areas_served": null,
"agent_specialities": null,
"agent_experience": null,
"summary": null,
"title": null,
"mls_id": "X55624",
"price_range": null,
"sold_properties": null,
"active_properties": null
}
]
}
}
This endpoint retrieves traditional property location data.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/traditional-property
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | The traditional property Id from the Mashvisor database. | |
| state* | String | The state of the property should be provided to the api or api will throw error 404. | |
| parcel_number | String | Property parcel or APN | |
| mls_id | String | Property MLS id | |
| address | String | Property street address | |
| city | String | Property city | |
| zip_code | String | Property zip code |
Get Neighborhood Historical Performance
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/traditional?state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/traditional?state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/traditional');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'CA'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/neighborhood/268201/historical/traditional?state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"months": [
{
"year": 2026,
"month": 1,
"zero_room_value": 2740,
"one_room_value": 3292,
"two_room_value": 4992,
"three_room_value": 5760,
"four_room_value": 6240
},
{
"year": 2025,
"month": 12,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5760,
"four_room_value": 6240
},
{
"year": 2025,
"month": 11,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 10,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 9,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 8,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 7,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 6,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 5,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5664,
"four_room_value": 6240
},
{
"year": 2025,
"month": 4,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5568,
"four_room_value": 6240
},
{
"year": 2025,
"month": 3,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5568,
"four_room_value": 6240
},
{
"year": 2025,
"month": 2,
"zero_room_value": 2385,
"one_room_value": 2917,
"two_room_value": 4992,
"three_room_value": 5568,
"four_room_value": 6240
}
],
"averages": {
"zero_room_value": 2414.58,
"one_room_value": 2948.25,
"two_room_value": 4992,
"three_room_value": 5656,
"four_room_value": 6240
}
},
"message": "Historical Data fetched successfully"
}
Get a submarket (neighborhood) short term historical performance for its listings as an array
HTTP Request
GET https://api.mashvisor.com/v1.1/client/neighborhood/{id}/historical/traditional
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| id | Long | Neighborhood id to fetch data for |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state should be provided to the api or api will throw error 404. | |
| month | Integer | A month to fetch after | |
| year | Integer | A month to fetch after | |
| beds | Integer | 0 to 4 bedrooms value |
Get Long Term Rental Comps
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/long-term-comps?state=GA&city=Dahlonega")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/long-term-comps?state=GA&city=Dahlonega")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/long-term-comps');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'GA',
'city' => 'Dahlonega'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/long-term-comps?state=GA&city=Dahlonega"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"total_results": 26,
"next_page_url": null,
"current_page": 1,
"total_pages": 1,
"items_per_page": 30,
"properties": [
{
"id": 6442907,
"title": "Single Family Residence, Other - Dahlonega, GA",
"lon": -84.08257293701172,
"lat": 34.49126815795898,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2350,
"baths": 3,
"full_baths": 3,
"beds": 4,
"num_of_units": null,
"sqft": 2240,
"lot_size": 43560,
"days_on_market": 7,
"year_built": 2007,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7626712",
"image": "http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3215331092r.jpg",
"extra_images": "http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3215331092r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f579422519r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f672613881r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f4255925649r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f4280722397r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2997598322r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f190132745r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1009448950r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f648420291r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3519536299r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f414185264r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3018795877r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3807747075r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1886903637r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f4211376383r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2309331403r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2288134447r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2338876027r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1109842223r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3695919714r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1665112932r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f446123281r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f121348429r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f3995829727r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2237687308r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f147006886r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2172435762r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1030439780r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f2924913121r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f664997505r.jpg,http://lh.rdcpix.com/54dbe88bd8dfab5b6752e43376051521l-f1552638081r.jpg",
"zipcode": "30533",
"address": "58 Pinewood Drive",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Community Partners LLC dba Keller Williams Realty Community Partners",
"broker_number": "(678) 341-7409",
"broker_url": "http://www.northforsyth.yourkwoffice.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "Use GPS",
"parcel_number": "034 025",
"url": "https://listings.listhub.net/pages/FMLSGA/7626712/?channel=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-08-03T21:00:00.000Z",
"modification_timestamp": "2025-08-06T19:07:02.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6438024,
"title": "Single Family Residence, Ranch, Traditional - Dahlonega, GA",
"lon": -83.94630432128906,
"lat": 34.57192611694336,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2650,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": null,
"lot_size": 69696,
"days_on_market": 24,
"year_built": 2025,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7616369",
"image": "http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3340234263r.jpg",
"extra_images": "http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3340234263r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2187327674r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1722850052r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3559758767r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1668534385r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f4011727962r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1271561130r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3742592221r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1059329166r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1356758895r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1940861386r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1367089931r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2612526371r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2322202965r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2503528840r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3184881867r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1466428327r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f164386845r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2282003266r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f3942678343r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1521993778r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2279446833r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f2988919781r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f796451700r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f1937971825r.jpg,http://lh.rdcpix.com/6954765b4da8cfe898fdc33b264b16c6l-f686430710r.jpg",
"zipcode": "30533",
"address": "340 Harmony Drive Road",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS Friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/340-Harmony-Dr_Dahlonega_GA_30533_M99705-85876?f=listhub&s=FMLSGA&m=7616369&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-07-17T21:00:00.000Z",
"modification_timestamp": "2025-07-18T23:06:46.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6433103,
"title": "Townhouse - Dahlonega, GA",
"lon": -83.9524917602539,
"lat": 34.53763961791992,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1495,
"baths": 3,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": 1180,
"lot_size": null,
"days_on_market": 49,
"year_built": 1998,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Assigned",
"walkscore": null,
"mls_id": "7527246",
"image": "http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1824203366r.jpg",
"extra_images": "http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1824203366r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f398660964r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f3239389839r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f952601179r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1945338738r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f3628281133r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f2747162208r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1232760158r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f121661292r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f848285300r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f2243017892r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1443970210r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f2830599121r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1625690477r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f244236018r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f1619142461r.jpg,http://lh.rdcpix.com/33dc4f946bd386f348c97eeaa5cc0745l-f2534233710r.jpg",
"zipcode": "30533",
"address": "48 Mountain View Trail East #8",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS friendly.",
"parcel_number": "060 051",
"url": "https://www.realtor.com/rentals/details/48-Mountain-View-Trl-E-Apt-8_Dahlonega_GA_30533_M96392-37164?f=listhub&s=FMLSGA&m=7527246&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-06-22T21:00:00.000Z",
"modification_timestamp": "2025-06-23T21:05:26.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6426322,
"title": "Other, A-Frame - Dahlonega, GA",
"lon": -84.07373809814453,
"lat": 34.53813552856445,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1250,
"baths": 1,
"full_baths": 1,
"beds": 1,
"num_of_units": null,
"sqft": 3092,
"lot_size": 252648,
"days_on_market": 31,
"year_built": 1968,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Parking Lot",
"walkscore": null,
"mls_id": "7587099",
"image": "http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f2382275665r.jpg",
"extra_images": "http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f2382275665r.jpg,http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f3667444700r.jpg,http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f2170191855r.jpg,http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f2468477399r.jpg,http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f1535934144r.jpg,http://lh.rdcpix.com/caa8672720dc34a688c0862e65306357l-f324919365r.jpg",
"zipcode": "30533",
"address": "2331 Highway 52 W #Suite E",
"type": "Other",
"property_type": "Residential Lease",
"property_sub_type": "Other",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS Friendly.",
"parcel_number": "032 004",
"url": "https://www.realtor.com/rentals/details/2331-Highway-52-W_Dahlonega_GA_30533_M60154-07946?f=listhub&s=FMLSGA&m=7587099&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-05-29T21:00:00.000Z",
"modification_timestamp": "2025-05-30T17:05:58.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6397450,
"title": "Townhouse, Brick/Frame - Dahlonega, GA",
"lon": -83.97216796875,
"lat": 34.51956176757813,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2430,
"baths": 7,
"full_baths": 6,
"beds": 4,
"num_of_units": null,
"sqft": 1,
"lot_size": 6534,
"days_on_market": 35,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Carport",
"walkscore": null,
"mls_id": "10520703",
"image": "http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f103787737r.jpg",
"extra_images": "http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f103787737r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1668213110r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1713855390r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2955128566r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1484699277r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3239582096r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2679159295r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2216241784r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2274945427r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3165955920r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3690982779r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3989353513r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3345452202r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f4155469356r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2488289157r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f661764833r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1639335848r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1419645242r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3479120737r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2744512961r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1224018948r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f559500352r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1154469484r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2814015630r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f191574707r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f318034931r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f4045037244r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f160948677r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2106676871r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3055523412r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f4276640709r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1732278568r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2679159295r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2216241784r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3165955920r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3690982779r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3989353513r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f3345452202r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2488289157r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1419645242r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2744512961r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1224018948r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f559500352r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f191574707r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f4045037244r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2998613676r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2517546493r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f160948677r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2106676871r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2006807531r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f1983164176r.jpg,http://lh.rdcpix.com/ff92a2aca71c56f1a0c895c99be5f1c4l-f2191514136r.jpg",
"zipcode": "30533",
"address": "413 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "eXp Realty",
"broker_number": "(770) 361-7068",
"broker_url": null,
"source": "Georgia Multiple Listing Service",
"mls_name": "Georgia Multiple Listing Service",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": "Central",
"cooling_system": "Central Air",
"view_type": "Mountain",
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"New Lumpkin County\",\"district\":null}]",
"characteristics": "Cooktop, Dishwasher, Dryer, Garbage Disposer, Microwave, Range, Refrigerator, Washer",
"directions": "413 Stoneybrook Drive Dahlonega, GA 30533",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/413-Stoneybrook-Dr_Dahlonega_GA_30533_M94721-28802?f=listhub&s=GAMLS&m=10520703&c=mashv",
"disclaimer": "Copyright © 2025 Georgia Multiple Listing Service. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-05-11T21:00:00.000Z",
"modification_timestamp": "2025-06-12T16:09:48.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6419092,
"title": "Single Family Residence, Traditional - Dahlonega, GA",
"lon": -84.0495376586914,
"lat": 34.49214935302734,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2300,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1600,
"lot_size": 75794,
"days_on_market": 19,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": null,
"walkscore": null,
"mls_id": "7584643",
"image": "http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3365490645r.jpg",
"extra_images": "http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3365490645r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f967856689r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f848485805r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1322702360r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f461182274r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2795881053r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f605907072r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3384933830r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1372549860r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1736994035r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f928046891r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f4169848012r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f527883279r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1797060306r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f4287844579r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2834141015r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1768863296r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3837268769r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2289249946r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1095396989r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2872030305r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2903522804r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2555235632r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3537788328r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3271539161r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f833915855r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f763979899r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2339278554r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2309047918r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1484924579r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f4125159977r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f230442794r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f3497043517r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f889164888r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1633837798r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f38125510r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f2095661692r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f4063482267r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1096694729r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f1506085810r.jpg,http://lh.rdcpix.com/1a0ca0a2b27fc01384358754230931c3l-f4077565425r.jpg",
"zipcode": "30533",
"address": "230 Grand Oak Lane",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": "047 691",
"url": "https://www.realtor.com/rentals/details/230-Grand-Oak-Ln_Dahlonega_GA_30533_M91882-87382?f=listhub&s=FMLSGA&m=7584643&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-05-21T21:00:00.000Z",
"modification_timestamp": "2025-05-23T08:35:15.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6250636,
"title": "Cabin, Single Family Residence - Dahlonega, GA",
"lon": -84.02269744873047,
"lat": 34.59280014038086,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2100,
"baths": 2,
"full_baths": 2,
"beds": 4,
"num_of_units": null,
"sqft": 2128,
"lot_size": 185130,
"days_on_market": 33,
"year_built": 1995,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7575185",
"image": "http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3670113693r.jpg",
"extra_images": "http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3670113693r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3663960515r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f249197635r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f180238496r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3888957268r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f106682752r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3741143915r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f1813055679r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f36528846r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f2230391870r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3508633991r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f812824035r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f1065287278r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f714231549r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f542810123r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f2484858562r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f4213266002r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f1391135119r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f603675481r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f1663688465r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3907082000r.jpg,http://lh.rdcpix.com/8c4f27f0979f32c27fdb145c222d9f5bl-f3278035886r.jpg",
"zipcode": "30533",
"address": "75 Fred Burns Road",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Community Partners LLC dba Keller Williams Realty Community Partners",
"broker_number": "(678) 341-7409",
"broker_url": "http://www.northforsyth.yourkwoffice.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "Use GPS",
"parcel_number": "042 090",
"url": "https://listings.listhub.net/pages/FMLSGA/7575185/?channel=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-05-07T21:00:00.000Z",
"modification_timestamp": "2025-05-15T18:07:05.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6420885,
"title": "Ranch, Quadruplex - Dahlonega, GA",
"lon": -84.03414154052734,
"lat": 34.49528503417969,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1750,
"baths": 3,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 24,
"year_built": 2020,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7576866",
"image": "http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f450088767r.jpg",
"extra_images": "http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f450088767r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f4182774672r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f1788173035r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f1386366120r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f2645759098r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f2793192578r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f2106991756r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f3578747438r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f4216791463r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f3547146581r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f1435267725r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f100823057r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f1290009831r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f2022881288r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f343976141r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f1195688656r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f860693607r.jpg,http://lh.rdcpix.com/9c122e9d1e117f52c22c6858bfa0e441l-f3517578874r.jpg",
"zipcode": "30533",
"address": "404d Brookstone Drive",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Quadruplex",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/404-Brookstone-Dr-Unit-D_Dahlonega_GA_30533_M93770-80054?f=listhub&s=FMLSGA&m=7576866&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-05-08T21:00:00.000Z",
"modification_timestamp": "2025-05-09T19:05:04.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6416654,
"title": "Single Family Residence, Traditional - Dahlonega, GA",
"lon": -84.04925537109375,
"lat": 34.49126434326172,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2500,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1800,
"lot_size": 47045,
"days_on_market": 17,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "7563678",
"image": "http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2474400235r.jpg",
"extra_images": "http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2474400235r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f3234437460r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f4280917832r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f1817951176r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f1879983121r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f3002557817r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f745511538r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f361236276r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f426014774r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2473023368r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f1727762970r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2862437691r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f342242573r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f668778282r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2229628469r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f4248001788r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f1454597330r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2558687193r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f3539933582r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2420629002r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f663594335r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f2396376880r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f519382722r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f1404738446r.jpg,http://lh.rdcpix.com/ee8eda567322f2d6a96c5cf2ad61d235l-f180854452r.jpg",
"zipcode": "30533",
"address": "240 Grand Oak Lane",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": "047 692",
"url": "https://www.realtor.com/rentals/details/240-Grand-Oak-Ln_Dahlonega_GA_30533_M97925-87249?f=listhub&s=FMLSGA&m=7563678&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-04-20T22:00:00.000Z",
"modification_timestamp": "2025-05-08T01:50:33.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6413482,
"title": "Ranch, Quadruplex - Dahlonega, GA",
"lon": -84.03414154052734,
"lat": 34.49528503417969,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1750,
"baths": 3,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 4,
"year_built": 2020,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7556645",
"image": "http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f16051081r.jpg",
"extra_images": "http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f16051081r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f4182774672r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f1788173035r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f1386366120r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f2645759098r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f2793192578r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f2106991756r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f3578747438r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f4216791463r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f3547146581r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f1435267725r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f100823057r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f2343359128r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f1314339509r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f1290009831r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f860693607r.jpg,http://lh.rdcpix.com/2ffabf4f83c8a85521a0e65545c04220l-f3517578874r.jpg",
"zipcode": "30533",
"address": "303c Brookstone Drive",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Quadruplex",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/303-Brookstone-Dr-Unit-C_Dahlonega_GA_30533_M90876-99004?f=listhub&s=FMLSGA&m=7556645&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-04-08T22:00:00.000Z",
"modification_timestamp": "2025-04-09T20:33:10.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6412174,
"title": "Ranch, Quadruplex - Dahlonega, GA",
"lon": -84.03414154052734,
"lat": 34.49528503417969,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1750,
"baths": 3,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 3,
"year_built": 2020,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7550506",
"image": "http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f16051081r.jpg",
"extra_images": "http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f16051081r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f4182774672r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f1788173035r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f1386366120r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f2645759098r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f2793192578r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f2106991756r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f3578747438r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f4216791463r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f3547146581r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f1435267725r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f100823057r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f2343359128r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f1314339509r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f1290009831r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f860693607r.jpg,http://lh.rdcpix.com/d6864e08a24f32b106259c39784489ffl-f3517578874r.jpg",
"zipcode": "30533",
"address": "202d Brookstone Drive",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Quadruplex",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/202-Brookstone-Dr-Unit-D_Dahlonega_GA_30533_M90641-96875?f=listhub&s=FMLSGA&m=7550506&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-03-30T22:00:00.000Z",
"modification_timestamp": "2025-03-31T16:04:48.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6409879,
"title": "Ranch, Quadruplex - Dahlonega, GA",
"lon": -84.03414154052734,
"lat": 34.49528503417969,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1750,
"baths": 3,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 1,
"year_built": 2020,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7547202",
"image": "http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f16051081r.jpg",
"extra_images": "http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f16051081r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f4182774672r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f1788173035r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f1386366120r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f2645759098r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f2793192578r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f2106991756r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f3578747438r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f4216791463r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f3547146581r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f1435267725r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f100823057r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f2343359128r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f1314339509r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f1290009831r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f860693607r.jpg,http://lh.rdcpix.com/ae36ef7cba3d8f3bdf62b2670ea37798l-f3517578874r.jpg",
"zipcode": "30533",
"address": "303a Brookstone Drive",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Quadruplex",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/303-Brookstone-Dr-Unit-A_Dahlonega_GA_30533_M97329-23735?f=listhub&s=FMLSGA&m=7547202&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-03-24T22:00:00.000Z",
"modification_timestamp": "2025-03-25T21:38:51.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6375230,
"title": "Townhouse, Brick/Frame - Dahlonega, GA",
"lon": -83.9719009399414,
"lat": 34.52069854736328,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2580,
"baths": 4,
"full_baths": 3,
"beds": 4,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 149,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Carport",
"walkscore": null,
"mls_id": "10390804",
"image": "http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f3202317159r.jpg",
"extra_images": "http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f3202317159r.jpg,http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f1213286388r.jpg,http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f1114234503r.jpg,http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f980484863r.jpg,http://lh.rdcpix.com/29d74938542c2fdb4fc563e0b2420c30l-f512945361r.jpg",
"zipcode": "30533",
"address": "471 Stoneybrook Dr",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "eXp Realty",
"broker_number": "(770) 361-7068",
"broker_url": null,
"source": "Georgia Multiple Listing Service",
"mls_name": "Georgia Multiple Listing Service",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": "Central Furnace, Fireplace",
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"New Lumpkin County\",\"district\":null}]",
"characteristics": "Dishwasher, Dryer, Microwave, Range, Refrigerator, Washer",
"directions": "471 stonebrook Dr Dahlonega GA 30533",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/471-Stoneybrook-Dr_Dahlonega_GA_30533_M94621-52013?f=listhub&s=GAMLS&m=10390804&c=mashv",
"disclaimer": "Copyright © 2025 Georgia Multiple Listing Service. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-10-05T21:00:00.000Z",
"modification_timestamp": "2025-01-14T22:44:24.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6397448,
"title": "Ranch, Duplex - Dahlonega, GA",
"lon": -83.89759826660156,
"lat": 34.53492736816406,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1695,
"baths": 2,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": 21780,
"days_on_market": 48,
"year_built": 1998,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7509343",
"image": "http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f3218739024r.jpg",
"extra_images": "http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f3218739024r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f2794940485r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f1156063028r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f3191193811r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f1213494411r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f655329549r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f3726965064r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f183757207r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f317315592r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f4186569279r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f3626074705r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f207456073r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f1291529771r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f193059698r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f700322091r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f1317805674r.jpg,http://lh.rdcpix.com/5e50a9a4f1a589deb4bc4430594c7012l-f1047126441r.jpg",
"zipcode": "30533",
"address": "22 Copper Creek Drive #3",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Duplex",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/22-Copper-Creek-Dr-3_Dahlonega_GA_30533_M57435-35163?f=listhub&s=FMLSGA&m=7509343&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-14T22:00:00.000Z",
"modification_timestamp": "2025-02-27T15:09:55.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6370001,
"title": "Townhouse, Craftsman, Townhouse - Dahlonega, GA",
"lon": -83.97039794921875,
"lat": 34.51800155639648,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2400,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1877,
"lot_size": null,
"days_on_market": 56,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 1,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "7505260",
"image": "http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f2091676554r.jpg",
"extra_images": "http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f2091676554r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f2493079037r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1880547377r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1732423429r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f922892251r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f585907718r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1825879845r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f3612853447r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1574091722r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1900872715r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f3945220412r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f556982928r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f1897462399r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f3208491341r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f3972898605r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f3979858190r.jpg,http://lh.rdcpix.com/4ba8d7b8d4e96d6ac47e9ae73a3668d3l-f2159211741r.jpg",
"zipcode": "30533",
"address": "510 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "Sekhars Realty LLC",
"broker_number": "(404) 808-9978",
"broker_url": "http://www.sekharrealty.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Craftsman",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "400N to left on S. Chestattee. Entrance is 4.5 miles on the right. Use GPS address for agents in the Clubhouse: 100 Aspen Court, Dahlonega, GA 30533.",
"parcel_number": "080 203",
"url": "https://www.realtor.com/rentals/details/510-Stoneybrook-Dr_Dahlonega_GA_30533_M93301-34134?f=listhub&s=FMLSGA&m=7505260&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-06T22:00:00.000Z",
"modification_timestamp": "2025-02-11T22:10:06.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6389201,
"title": "Townhouse - Dahlonega, GA",
"lon": -83.97139739990234,
"lat": 34.51869964599609,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2580,
"baths": 3,
"full_baths": 2,
"beds": 4,
"num_of_units": null,
"sqft": null,
"lot_size": null,
"days_on_market": 149,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Carport",
"walkscore": null,
"mls_id": "7467381",
"image": "http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f4030360245r.jpg",
"extra_images": "http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f4030360245r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f2230011810r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f3791143851r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f960601693r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f2610066089r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f1159256898r.jpg,http://lh.rdcpix.com/551e900257586403d8b035d5cd6ed6d1l-f26966252r.jpg",
"zipcode": "30533",
"address": "471 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "eXp Realty",
"broker_number": "(888) 959-9461",
"broker_url": null,
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "471 stoneybrook DR Dahlonega GA 30533",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/471-Stoneybrook-Dr_Dahlonega_GA_30533_M94621-52013?f=listhub&s=FMLSGA&m=7467381&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-10-05T21:00:00.000Z",
"modification_timestamp": "2025-01-14T22:21:28.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6393667,
"title": "Townhouse - Dahlonega, GA",
"lon": -84.02649688720703,
"lat": 34.56650161743164,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2300,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1877,
"lot_size": 2614,
"days_on_market": 55,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": null,
"walkscore": null,
"mls_id": "7506337",
"image": "http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2558459349r.jpg",
"extra_images": "http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2558459349r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1077925756r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2659641996r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1027564283r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1888801217r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2878836456r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f969528771r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3036074978r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3818513308r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3157180724r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f474710874r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2286325126r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f981954984r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f435058246r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3882180572r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f877560496r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2023467677r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f720795244r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2641061924r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3166640084r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1391613172r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2822428137r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f4053570478r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3878463966r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2486345641r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1833390847r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1938149409r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1581079732r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3921358014r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3066793476r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1401937963r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f996216937r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f16957784r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1699913857r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3038521234r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2394935987r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3712765697r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f2627439726r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f3151685244r.jpg,http://lh.rdcpix.com/cb8a0821e28397072f0bfc5ef7455465l-f1231397919r.jpg",
"zipcode": "30533",
"address": "445 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "HomeSmart",
"broker_number": "(404) 876-4901",
"broker_url": "https://homesmart.com/",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Lumpkin - Other\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "Use GPS",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/445-Stoneybrook-Dr_Dahlonega_GA_30533_M93319-58060?f=listhub&s=FMLSGA&m=7506337&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-06T22:00:00.000Z",
"modification_timestamp": "2025-02-15T19:03:55.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6381788,
"title": "Townhouse, Craftsman, Townhouse - Dahlonega, GA",
"lon": -83.970703125,
"lat": 34.51860046386719,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2400,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1877,
"lot_size": null,
"days_on_market": 118,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 1,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "7481671",
"image": "http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2447375815r.jpg",
"extra_images": "http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2447375815r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f1505972441r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f614278434r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2101005495r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2037418810r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2762235457r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2420148902r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f898726922r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f469670134r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2573065932r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2296615883r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f993393388r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2441773428r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f3753203758r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2732504091r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f715253629r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f3864932326r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f3374537520r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f3182377571r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f500342888r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f4256195417r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f259850585r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f9302808r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f1779497863r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f1770333908r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f997412626r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f305367695r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f4282675463r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f770933137r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2757414004r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f1340534455r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f138305863r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f1004794102r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f2659838987r.jpg,http://lh.rdcpix.com/34678eeeae7887596cb4d1a4ef26d183l-f3742717895r.jpg",
"zipcode": "30533",
"address": "495 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "Sekhars Realty LLC",
"broker_number": "(404) 808-9978",
"broker_url": "http://www.sekharrealty.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Craftsman",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "400N to left on S. Chestattee. Entrance is 4.5 miles on the right. Use GPS address for agents in the Clubhouse: 100 Aspen Court, Dahlonega, GA 30533.",
"parcel_number": "080 218",
"url": "https://www.realtor.com/rentals/details/495-Stoneybrook-Dr_Dahlonega_GA_30533_M98967-57252?f=listhub&s=FMLSGA&m=7481671&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-11-04T22:00:00.000Z",
"modification_timestamp": "2025-02-10T04:05:26.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6401897,
"title": "Single Family Residence, Traditional - Dahlonega, GA",
"lon": -84.03279876708984,
"lat": 34.55461883544922,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2100,
"baths": 2,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1332,
"lot_size": 43560,
"days_on_market": 6,
"year_built": 2022,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7523983",
"image": "http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f420887758r.jpg",
"extra_images": "http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f420887758r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f3206953131r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f2051997783r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f1395971426r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f2772168770r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f3770679010r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f3818998615r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f856741559r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f1224031575r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f4179151555r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f2802484917r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f1462705595r.jpg,http://lh.rdcpix.com/e3defe5a0e6f4be171d89d7de848a149l-f3014879311r.jpg",
"zipcode": "30533",
"address": "60 Ernest Way",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "North Georgia Lakeside Realty",
"broker_number": "(678) 446-6825",
"broker_url": "http://www.northgeorgialakesiderealty",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "gps friendly",
"parcel_number": "044 486",
"url": "https://www.realtor.com/rentals/details/60-Ernest-Way_Dahlonega_GA_30533_M97486-32805?f=listhub&s=FMLSGA&m=7523983&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-02-11T22:00:00.000Z",
"modification_timestamp": "2025-02-13T10:05:31.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6397449,
"title": "Cape Cod, Single Family Residence - Dahlonega, GA",
"lon": -84.02887725830078,
"lat": 34.49831390380859,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2100,
"baths": 2,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": 2750,
"lot_size": 21780,
"days_on_market": 32,
"year_built": 2007,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 2,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7510479",
"image": "http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1241311589r.jpg",
"extra_images": "http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1241311589r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1555839695r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f74318639r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f861306702r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f523134153r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f4174940273r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f4005398321r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f307915972r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f2627491002r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f544314142r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f2047056900r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3560550050r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f2091873224r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3859412184r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3410677750r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1155006787r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1344524356r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f250105807r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f595455323r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f875648968r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f2260430694r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1564859077r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1467268564r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3832931481r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f2103237124r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3023683305r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f1455277380r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f707829856r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3549497150r.jpg,http://lh.rdcpix.com/13f3d6ce85a02ebfdd489be3ef77ea3dl-f3300232123r.jpg",
"zipcode": "30533",
"address": "538 Bearslide Hollow",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Keller Williams Realty Atlanta Partners",
"broker_number": "(678) 775-2600",
"broker_url": null,
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Cape Cod",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blackburn\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "From 400: Turn Left onto Burnt Stand, Right onto Auraria, Left onto Ben Higgins, and Bearslide Hollow Subdivision will be on your right. Look for 538.\r\nFrom the Square: Turn Right onto Morrison Moore PKWY, Left onto Ben Higgins, and Bearslide Hollow Subdi",
"parcel_number": "047 149",
"url": "https://listings.listhub.net/pages/FMLSGA/7510479/?channel=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-16T22:00:00.000Z",
"modification_timestamp": "2025-01-26T20:05:18.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6397452,
"title": "Single Family Residence, Ranch, Traditional - Dahlonega, GA",
"lon": -83.94630432128906,
"lat": 34.57192611694336,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2495,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1985,
"lot_size": 69696,
"days_on_market": 16,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7512196",
"image": "http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3217766211r.jpg",
"extra_images": "http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3217766211r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3932212715r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f55152229r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2714277386r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2497311670r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2284278101r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f774736336r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f568569298r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f1586542202r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3460719571r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f1833486120r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3104545940r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3151503569r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f1685411431r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f112308086r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3984567022r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2186714637r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f164228842r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f782667106r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f916550958r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f1786169910r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2003983170r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3295818215r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2870794434r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f3756096831r.jpg,http://lh.rdcpix.com/066ade907fff2d52e4df59bbc493225dl-f2416251082r.jpg",
"zipcode": "30533",
"address": "310 Harmony Drive Road",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS Friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/310-Harmony-Dr_Dahlonega_GA_30533_M97256-02678?f=listhub&s=FMLSGA&m=7512196&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-20T22:00:00.000Z",
"modification_timestamp": "2025-01-21T23:08:52.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6393994,
"title": "Single Family Residence, Traditional - Dahlonega, GA",
"lon": -84.10160064697266,
"lat": 34.38619995117188,
"state": "GA",
"city": "Dahlonega",
"county": "DAWSON - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2150,
"baths": 3,
"full_baths": 2,
"beds": 4,
"num_of_units": null,
"sqft": 2097,
"lot_size": 4356,
"days_on_market": 7,
"year_built": 2025,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "7507762",
"image": "http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1219456312r.jpg",
"extra_images": "http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1219456312r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f600964524r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1615283668r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3854260385r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3600169572r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3036314550r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f718079717r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f2254410894r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1227982139r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f2211988994r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f2817186130r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3732292672r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f584120988r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1140250638r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3818297055r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f2254737611r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f2917389523r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f1613289675r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f4125686668r.jpg,http://lh.rdcpix.com/c3c525821e1d5576d414c342bf4256d6l-f3378258733r.jpg",
"zipcode": "30534",
"address": "108 Parkwood Drive",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Virtual Properties Realty",
"broker_number": "(770) 495-5050",
"broker_url": "https://virtualpropertiesrealty.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Blacks Mill\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Dawson County\",\"district\":null},{\"category\":\"High\",\"name\":\"Dawson County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/108-Parkwood-Dr_Dawsonville_GA_30534_M98188-77482?f=listhub&s=FMLSGA&m=7507762&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2025-01-08T22:00:00.000Z",
"modification_timestamp": "2025-01-14T22:26:09.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6390160,
"title": "Townhouse - Dahlonega, GA",
"lon": -83.97139739990234,
"lat": 34.52030181884766,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2400,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1877,
"lot_size": null,
"days_on_market": 31,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7498621",
"image": "http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1186368405r.jpg",
"extra_images": "http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1186368405r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1511347624r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1235052323r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3955268611r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2678071917r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1853593213r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3434887843r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2387479248r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2868488611r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f944230249r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1248198571r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3505863841r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1804501271r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2701274467r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1597973572r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3806422461r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2575022657r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3327032359r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1991156435r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3881039147r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3994475067r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2099470653r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f356286368r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3560125585r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3947893971r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3740744817r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2255858183r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2346853120r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3167819238r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1429020645r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2183140499r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1058705295r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3352950166r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3557862175r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2539128689r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f471186570r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3896052909r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2212067189r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f742133908r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f396984809r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2079589256r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f638804338r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1629926412r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f299218328r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2764150834r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f580930287r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1527156564r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f755763728r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f220716073r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f420705311r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1810710325r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1365968275r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3918632995r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2823481263r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2715353310r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f770349480r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3267472777r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3823893123r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f391944464r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2159344561r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2418798105r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f180026137r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3560125585r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1739570410r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2777616651r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3121346360r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3646912228r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f2578610241r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3961778974r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f4062469065r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1064609788r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f1405078343r.jpg,http://lh.rdcpix.com/769c9fc4950b7a95b872bb40f3d9aa3fl-f3791555829r.jpg",
"zipcode": "30533",
"address": "405 Stoneybrook Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "Keller Williams Realty - North Atlanta",
"broker_number": "(770) 663-7291",
"broker_url": "http://www.gonorthatlanta.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Lumpkin - Other\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "400N to left on S. Chestattee. Entrance is 4.5 miles on the right. Use GPS address for agents in the Clubhouse: 100 Aspen Court, Dahlonega, GA 30533.",
"parcel_number": null,
"url": "https://listings.listhub.net/pages/FMLSGA/7498621/?channel=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-12-15T22:00:00.000Z",
"modification_timestamp": "2025-01-14T22:22:21.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6383357,
"title": "Single Family Residence, Ranch, Traditional - Dahlonega, GA",
"lon": -83.94629669189453,
"lat": 34.5718994140625,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2495,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1985,
"lot_size": 73616,
"days_on_market": 66,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7484423",
"image": "http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f367612598r.jpg",
"extra_images": "http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f367612598r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3022932159r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f831764883r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f1951035700r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f1586542202r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3460719571r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f1833486120r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3104545940r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3151503569r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f1685411431r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f112308086r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3984567022r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f2186714637r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f164228842r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f782667106r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f916550958r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f1786169910r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f2003983170r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3295818215r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f2870794434r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f3756096831r.jpg,http://lh.rdcpix.com/f170d4a0a04bf783656a02fe649d0fbel-f2416251082r.jpg",
"zipcode": "30533",
"address": "310 Leonard Pruitt Road",
"type": "Single home",
"property_type": "Residential Lease",
"property_sub_type": "Single Family Residence",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "New Traditional",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS Friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/310-Leonard-Pruitt-Rd_Dahlonega_GA_30533_M98978-93878?f=listhub&s=FMLSGA&m=7484423&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-11-10T22:00:00.000Z",
"modification_timestamp": "2025-01-14T22:22:38.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 6377465,
"title": "Townhouse - Dahlonega, GA",
"lon": -83.97039794921875,
"lat": 34.5182991027832,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 2400,
"baths": 3,
"full_baths": 2,
"beds": 3,
"num_of_units": null,
"sqft": 1877,
"lot_size": null,
"days_on_market": 121,
"year_built": 2024,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 1,
"parking_type": "Garage",
"walkscore": null,
"mls_id": "7457712",
"image": "http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f1420537972r.jpg",
"extra_images": "http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f1420537972r.jpg,http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f1694808694r.jpg,http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f866582482r.jpg,http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f490344680r.jpg,http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f2301205559r.jpg,http://lh.rdcpix.com/0504898563230892651041d4f0c6dde5l-f274437897r.jpg",
"zipcode": "30533",
"address": "575 STONEYBROOK Drive",
"type": "Townhouse",
"property_type": "Residential Lease",
"property_sub_type": "Townhouse",
"status": "rented",
"broker_name": "Virtual Properties Realty",
"broker_number": "(770) 495-5050",
"broker_url": "https://virtualpropertiesrealty.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Other",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Cottrell\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "400N to Left on S Chestate Entrance is around 4.6 miles on the right with community name mountain park.",
"parcel_number": "080 208",
"url": "https://www.realtor.com/rentals/details/575-Stoneybrook-Dr_Dahlonega_GA_30533_M92246-89869?f=listhub&s=FMLSGA&m=7457712&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-09-16T21:00:00.000Z",
"modification_timestamp": "2025-01-14T22:27:14.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
},
{
"id": 5363097,
"title": "Ranch, Duplex - Dahlonega, GA",
"lon": -83.89839935302734,
"lat": 34.53459930419922,
"state": "GA",
"city": "Dahlonega",
"county": "LUMPKIN - GA",
"neighborhood": {
"id": 24303,
"name": "Dahlonega",
"mashMeter": 26
},
"price": 1895,
"baths": 2,
"full_baths": 2,
"beds": 2,
"num_of_units": null,
"sqft": null,
"lot_size": 21780,
"days_on_market": 57,
"year_built": 1998,
"tax": null,
"tax_history": null,
"videos": null,
"virtual_tours": null,
"parking_spots": 0,
"parking_type": "Driveway",
"walkscore": null,
"mls_id": "7476731",
"image": "http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f3218739024r.jpg",
"extra_images": "http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f3218739024r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f2794940485r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f1156063028r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f3191193811r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f1213494411r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f655329549r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f3726965064r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f183757207r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f317315592r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f4186569279r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f3626074705r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f207456073r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f1291529771r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f193059698r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f700322091r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f1317805674r.jpg,http://lh.rdcpix.com/5a5b96ad78fe93607679e47b67d13929l-f1047126441r.jpg",
"zipcode": "30533",
"address": "96 Copper Creek Drive #10",
"type": "Multi Family",
"property_type": "Residential Lease",
"property_sub_type": "Duplex",
"status": "rented",
"broker_name": "Sellers Realty of Dahlonega",
"broker_number": "(770) 616-6261",
"broker_url": "http://www.chadwilliams.com",
"source": "First Multiple Listing Service, Inc.",
"mls_name": "First Multiple Listing Service, Inc.",
"architecture_style": "Ranch",
"pets_allowed": 0,
"smoking_allowed": 0,
"is_furnished": 0,
"has_pool": "false",
"is_water_front": "false",
"heating_system": null,
"cooling_system": null,
"view_type": null,
"schools": "[{\"category\":\"Elementary\",\"name\":\"Long Branch\",\"district\":null},{\"category\":\"MiddleOrJunior\",\"name\":\"Lumpkin County\",\"district\":null},{\"category\":\"High\",\"name\":\"Lumpkin County\",\"district\":null}]",
"characteristics": null,
"directions": "GPS friendly",
"parcel_number": null,
"url": "https://www.realtor.com/rentals/details/96-Copper-Creek-Dr-10_Dahlonega_GA_30533_M60727-87653?f=listhub&s=FMLSGA&m=7476731&c=mashv",
"disclaimer": "Copyright © 2025 First Multiple Listing Service, Inc. All rights reserved. All information provided by the listing agent/broker is deemed reliable but is not guaranteed and should be independently verified.",
"listing_date": "2024-11-12T22:00:00.000Z",
"modification_timestamp": "2024-12-31T23:24:32.000Z",
"neighborhoodId": 24303,
"neighborhood_zipcode": "30533"
}
]
}
}
Retrieve accurate long-term rental comps for any U.S. city or ZIP code within a specified state, ideal for investment analysis and property comparison.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/long-term-comps?state=GA&city=Dahlonega
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state | |
| city | String | city | |
| zipcode | String | zipcode | |
| page | Integer | 1 | page number |
| limit | Integer | 30 | items returned per page. maximum allowed is 30 |
| min_price | Float | 50000 | minimum price filter |
| max_price | Float | 5000000 | maximum price filter |
| min_beds | Integer | 1 | minimum beds filter |
| max_beds | Integer | 5 | maximum beds filter |
| min_baths | Integer | 1 | minimum baths filter |
| max_baths | Integer | 5 | maximum baths filter |
| exclude_rented | Integer | 0 | filter to exclude properties with "rented" status.Possible inputs: 0, 1 |
Trends
Get Top Airbnb Cities
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/trends/cities?state=GA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/trends/cities?state=GA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/trends/cities');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
$request->setQueryData(array(
'state' => 'GA',
'items' => '5'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/trends/cities?state=GA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"input": {
"page": 1,
"items": 5,
"state": "GA"
},
"total_page_results": 5,
"cities": [
{
"city": "Atlanta",
"state": "GA",
"occupancy": 16,
"total_listing": 28770,
"occ_listing": 460320
},
{
"city": "Columbus",
"state": "GA",
"occupancy": 35,
"total_listing": 3925,
"occ_listing": 137375
},
{
"city": "Augusta",
"state": "GA",
"occupancy": 25,
"total_listing": 3480,
"occ_listing": 87000
},
{
"city": "Decatur",
"state": "GA",
"occupancy": 47,
"total_listing": 1766,
"occ_listing": 83002
},
{
"city": "BROOKHAVEN",
"state": "GA",
"occupancy": 27,
"total_listing": 2621,
"occ_listing": 70767
}
]
}
}
This endpoint retrieves the cities with the highest occupancy rates including total Airbnb active listings in a specific state.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/trends/cities
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| items | Integer | 5 | The items to return the content for. Valid values: 10, ... etc. |
| page | Integer | 1 | page number. |
Get City Summary
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/trends/summary/IL/Chicago")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/trends/summary/IL/Chicago")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/trends/summary/IL/Chicago');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/trends/summary/IL/Chicago"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"active_neighborhoods": 227,
"investment_properties": 5231,
"airbnb_listings": 3397,
"traditional_listings": 1913,
"avg_property_price": 549642.8436,
"avg_price_per_sqft": 299.24933879,
"avg_days_on_market": 109.5151,
"avg_occupancy": 0.4565,
"avg_nightly_price": 240.1466,
"avg_airbnb_ROI": 0.2904370212375566,
"avg_airbnb_rental": 1102.0666666666666,
"avg_traditional_ROI": 5.0594554904758136,
"avg_traditional_rental": 2250.0005555555554
}
}
This endpoint retrieves a summary of Airbnb properties, traditional properties, investment properties, and active neighborhoods including average occupancy, nightly price, property price, and ROI for a specific city.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/summary/listing/{state}/{city}
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Path Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: NV. | |
| city | String* | City name, ex: Las Vegas. |
Get Listing Prices
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/trends/listing-price?zip_code=95118&state=CA")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/trends/listing-price?zip_code=95118&state=CA")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/trends/listing-price?zip_code=95118&state=CA');
$request->setMethod(HTTP_METH_GET);
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/trends/listing-price?zip_code=95118&state=CA"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"sample_size": 96,
"avg_price": 1600205.49,
"avg_price_per_sqft": 1001.216,
"median_price": 1644187,
"median_price_per_sqft": 1046
}
}
This endpoint retrieves average listing prices, median prices, average prices per sqft, and the median price/sqft for each zip code.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/listing-price
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | state* name, ex: CA. | |
| zip_code | String* | zip code value, ex: 95118. | |
| beds | Integer | 0 to 4 bedrooms value | |
| property_type | String | Possible values: 1. Single Family Residential 2. Townhouse 3. Condo/Coop 4. Multi Family 5. Other |
Get Location Heatmap
Sample Request
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.mashvisor.com/v1.1/client/search/heatmap?state=IL&type=AirbnbCoc&sw_lat=41.888509508814266&sw_lng=-87.7059177836914&ne_lat=41.93992529459902&ne_lng=-87.60995907397461")
.get()
.addHeader("x-api-key", "YOUR_API_KEY")
.build();
Response response = client.newCall(request).execute();
require 'uri'
require 'net/http'
url = URI("https://api.mashvisor.com/v1.1/client/search/heatmap?state=IL&type=AirbnbCoc&sw_lat=41.888509508814266&sw_lng=-87.7059177836914&ne_lat=41.93992529459902&ne_lng=-87.60995907397461")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["x-api-key"] = 'YOUR_API_KEY'
response = http.request(request)
puts response.read_body
<?php
$request = new HttpRequest();
$request->setUrl('https://api.mashvisor.com/v1.1/client/search/heatmap');
$request->setMethod(HTTP_METH_GET);
$request->setQueryData(array(
'state' => 'IL',
'type' => 'AirbnbCoc',
'sw_lat' => '41.888509508814266',
'sw_lng' => '-87.7059177836914',
'ne_lat' => '41.93992529459902',
'ne_lng' => '-87.60995907397461'
));
$request->setHeaders(array(
'x-api-key' => 'YOUR_API_KEY'
));
try {
$response = $request->send();
echo json_decode($response->getBody());
} catch (HttpException $ex) {
echo $ex;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.mashvisor.com/v1.1/client/search/heatmap?state=IL&type=AirbnbCoc&sw_lat=41.888509508814266&sw_lng=-87.7059177836914&ne_lat=41.93992529459902&ne_lng=-87.60995907397461"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "YOUR_API_KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
The above command returns JSON structured like this:
{
"status": "success",
"content": {
"min": -3,
"max": -1,
"total_results": 112,
"results": [
{
"id": 603,
"boundary": "POLYGON((-87.672667 41.91425,-87.672657 41.913876,-87.672576 41.910561,-87.667692 41.91063,-87.667754 41.912907,-87.667802 41.914329,-87.670231 41.914292,-87.672667 41.91425))",
"value": -3.01,
"airbnb_coc": -3.0146684646606445,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 35,
"boundary": "POLYGON((-87.69211 41.910277,-87.692022 41.905712,-87.691952 41.902968,-87.689488 41.902993,-87.687027 41.903016,-87.687123 41.906666,-87.687221 41.910321,-87.689667 41.910297,-87.69211 41.910277))",
"value": -1.97,
"airbnb_coc": -1.9666345119476318,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2870,
"boundary": "POLYGON((-87.677466 41.910463,-87.673679 41.907956,-87.671362 41.906477,-87.667513 41.904017,-87.667542 41.905108,-87.66759 41.907007,-87.667625 41.908358,-87.667692 41.91063,-87.672576 41.910561,-87.677466 41.910463))",
"value": -1.96,
"airbnb_coc": -1.959604566747492,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2520,
"boundary": "POLYGON((-87.692203 41.91395,-87.69211 41.910277,-87.689667 41.910297,-87.687221 41.910321,-87.687316 41.913995,-87.692203 41.91395))",
"value": -1.95,
"airbnb_coc": -1.9490554332733154,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2522,
"boundary": "POLYGON((-87.679907 41.91044,-87.679845 41.908212,-87.679815 41.907097,-87.6797 41.903147,-87.677258 41.903191,-87.67382 41.903245,-87.672381 41.903267,-87.669944 41.903306,-87.667495 41.903346,-87.667513 41.904017,-87.671362 41.906477,-87.673679 41.907956,-87.677466 41.910463,-87.679907 41.91044))",
"value": -1.93,
"airbnb_coc": -1.9341291884581249,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 852,
"boundary": "POLYGON((-87.687221 41.910321,-87.687123 41.906666,-87.687027 41.903016,-87.68458 41.903061,-87.68214 41.903107,-87.682286 41.908171,-87.682347 41.910393,-87.684782 41.910357,-87.687221 41.910321))",
"value": -1.59,
"airbnb_coc": -1.5875990589459736,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 33,
"boundary": "POLYGON((-87.68741 41.917568,-87.687316 41.913995,-87.683155 41.914059,-87.68242 41.913582,-87.682447 41.914619,-87.680014 41.91467,-87.680096 41.917707,-87.682519 41.917659,-87.684959 41.917615,-87.68741 41.917568))",
"value": -1.21,
"airbnb_coc": -1.2091227769851685,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 106,
"boundary": "POLYGON((-87.682447 41.914619,-87.68242 41.913582,-87.677466 41.910463,-87.677547 41.914249,-87.675112 41.914205,-87.672667 41.91425,-87.672701 41.91557,-87.672714 41.91603,-87.672762 41.91785,-87.677622 41.917758,-87.677555 41.914716,-87.680014 41.91467,-87.682447 41.914619))",
"value": -1,
"airbnb_coc": -0.9986053705215454,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2141,
"boundary": "POLYGON((-87.687316 41.913995,-87.687221 41.910321,-87.684782 41.910357,-87.682347 41.910393,-87.679907 41.91044,-87.677466 41.910463,-87.68242 41.913582,-87.683155 41.914059,-87.687316 41.913995))",
"value": -1,
"airbnb_coc": -0.9986053705215454,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1077,
"boundary": "POLYGON((-87.624103 41.898386,-87.624243 41.896734,-87.621831 41.896769,-87.62037 41.896785,-87.616537093402 41.896784660305,-87.617938052821 41.898731833099,-87.618931111471 41.900112070642,-87.620234 41.900073,-87.621889 41.900045,-87.624161 41.900006,-87.624127 41.89921,-87.624103 41.898386))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 718,
"boundary": "POLYGON((-87.624195 41.889864,-87.624355 41.88893,-87.622977 41.889045,-87.620464 41.888585,-87.617414 41.888454,-87.613110817969 41.888736045065,-87.613125713041 41.888782621432,-87.613580653749 41.890205205072,-87.613689 41.890544,-87.613171924982 41.890554955988,-87.614235 41.890552,-87.617652 41.890517,-87.617693 41.891847,-87.617715 41.892642,-87.617738 41.893447,-87.620275 41.893406,-87.624213 41.893335,-87.624268 41.892554,-87.624252 41.891731,-87.624195 41.889864))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 796,
"boundary": "POLYGON((-87.628199 41.896677,-87.628135 41.894072,-87.628092 41.892469,-87.628069 41.891672,-87.628004 41.887506,-87.62533 41.888849,-87.624355 41.88893,-87.624195 41.889864,-87.624252 41.891731,-87.624268 41.892554,-87.624213 41.893335,-87.624279 41.896529,-87.624243 41.896734,-87.625614 41.896712,-87.62685 41.896695,-87.628199 41.896677))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 595,
"boundary": "POLYGON((-87.628336 41.901558,-87.628317 41.90074,-87.628313 41.900593,-87.628265 41.89914,-87.628248 41.898469,-87.628199 41.896677,-87.62685 41.896695,-87.625614 41.896712,-87.624243 41.896734,-87.624103 41.898386,-87.624127 41.89921,-87.624161 41.900006,-87.624225 41.900816,-87.624267 41.901624,-87.628336 41.901558))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1976,
"boundary": "POLYGON((-87.628678 41.903942,-87.628628 41.90318,-87.628452 41.902432,-87.628345 41.901884,-87.628336 41.901558,-87.624267 41.901624,-87.624225 41.900816,-87.624161 41.900006,-87.621889 41.900045,-87.620234 41.900073,-87.618931111471 41.900112070642,-87.619852 41.901392,-87.621213462454 41.901668519541,-87.622647680134 41.901959816017,-87.622944 41.90202,-87.623050794073 41.902233202607,-87.623424885781 41.902980035513,-87.623798582125 41.903726079116,-87.624052 41.904232,-87.627977 41.903954,-87.628678 41.903942))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1973,
"boundary": "POLYGON((-87.628886 41.911223,-87.628831 41.909482,-87.628785 41.907799,-87.628775 41.906764,-87.628743 41.905819,-87.62871 41.904854,-87.628678 41.903942,-87.627977 41.903954,-87.624052 41.904232,-87.624133558541 41.904573505864,-87.624454501357 41.905917373133,-87.624486610259 41.906051821079,-87.624674157285 41.906837127047,-87.624762600054 41.907207458886,-87.625316437852 41.909526515275,-87.625542 41.910471,-87.624662560241 41.91096705249,-87.624475040058 41.911072824208,-87.626273 41.911107,-87.628886 41.911223))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1078,
"boundary": "POLYGON((-87.629775 41.896656,-87.629724 41.894854,-87.629717 41.894052,-87.629537 41.887508,-87.628004 41.887506,-87.628069 41.891672,-87.628092 41.892469,-87.628135 41.894072,-87.628199 41.896677,-87.629775 41.896656))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1975,
"boundary": "POLYGON((-87.629986 41.903923,-87.629963 41.903154,-87.629925 41.901864,-87.629889 41.900573,-87.629827 41.898444,-87.629775 41.896656,-87.628199 41.896677,-87.628248 41.898469,-87.628265 41.89914,-87.628313 41.900593,-87.628317 41.90074,-87.628336 41.901558,-87.628345 41.901884,-87.628452 41.902432,-87.628628 41.90318,-87.628678 41.903942,-87.629986 41.903923))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1076,
"boundary": "POLYGON((-87.63323 41.911164,-87.633121 41.907696,-87.630106 41.907857,-87.628785 41.907799,-87.628831 41.909482,-87.628886 41.911223,-87.631682 41.911181,-87.633076 41.911161,-87.63323 41.911164))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1974,
"boundary": "POLYGON((-87.634478 41.903853,-87.634442 41.902884,-87.634382 41.901325,-87.634291 41.898982,-87.634203 41.896596,-87.631245 41.896636,-87.629775 41.896656,-87.629827 41.898444,-87.629889 41.900573,-87.629925 41.901864,-87.629963 41.903154,-87.629986 41.903923,-87.630716 41.903914,-87.633002 41.903877,-87.634478 41.903853))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1071,
"boundary": "POLYGON((-87.638702 41.936592,-87.637834 41.936105,-87.638003 41.934372,-87.637955 41.932932,-87.632102 41.932727,-87.630924733915 41.933013625642,-87.630953 41.933132,-87.631898243497 41.936858177263,-87.631915470481 41.936926086533,-87.633784 41.93682,-87.636851 41.936618,-87.638702 41.936592))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1075,
"boundary": "POLYGON((-87.638816 41.918322,-87.638762 41.91651,-87.638704 41.914676,-87.638642 41.912875,-87.63864 41.91282,-87.638592 41.911115,-87.637624 41.911131,-87.636663 41.91114,-87.635701 41.91115,-87.634711 41.91116,-87.63323 41.911164,-87.633076 41.911161,-87.631682 41.911181,-87.628886 41.911223,-87.626273 41.911107,-87.624475040058 41.911072824208,-87.62403828676 41.911319177137,-87.620679 41.913214,-87.621435992 41.913666242734,-87.627115 41.917059,-87.627495857257 41.91865397621,-87.627525393724 41.918777670745,-87.630747 41.918539,-87.636117 41.918473,-87.637221 41.918351,-87.638816 41.918322))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1971,
"boundary": "POLYGON((-87.640479 41.925585,-87.639779 41.924455,-87.639366 41.92377,-87.638838 41.922893,-87.639058 41.92288,-87.638937 41.921961,-87.638816 41.918322,-87.637221 41.918351,-87.636117 41.918473,-87.630747 41.918539,-87.627525393724 41.918777670745,-87.629380744939 41.926547618655,-87.633632 41.925751,-87.636064 41.92567,-87.636569 41.925658,-87.639116 41.925612,-87.640479 41.925585))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1072,
"boundary": "POLYGON((-87.641807 41.927813,-87.641336 41.92701,-87.640479 41.925585,-87.639116 41.925612,-87.636569 41.925658,-87.636064 41.92567,-87.633632 41.925751,-87.629380744939 41.926547618655,-87.630924733915 41.933013625642,-87.632102 41.932727,-87.637955 41.932932,-87.639327 41.93292,-87.641343 41.93287,-87.641786 41.93236,-87.640869 41.930856,-87.641467 41.930661,-87.640634 41.929242,-87.639265 41.929696,-87.639228 41.928665,-87.641807 41.927813))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1972,
"boundary": "POLYGON((-87.64355 41.914625,-87.643525 41.913898,-87.64349 41.91281,-87.643431 41.911018,-87.641017 41.911076,-87.638592 41.911115,-87.63864 41.91282,-87.638642 41.912875,-87.638704 41.914676,-87.641135 41.914661,-87.641744 41.914653,-87.642937 41.914634,-87.64355 41.914625))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 717,
"boundary": "POLYGON((-87.643927 41.925532,-87.643787 41.921888,-87.643728 41.920072,-87.643667 41.918253,-87.641246 41.918286,-87.638816 41.918322,-87.638937 41.921961,-87.639058 41.92288,-87.638838 41.922893,-87.639366 41.92377,-87.639779 41.924455,-87.640479 41.925585,-87.641502 41.925569,-87.643927 41.925532))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1978,
"boundary": "POLYGON((-87.644139 41.896456,-87.643886 41.894,-87.641927 41.892506,-87.639356 41.889081,-87.63871 41.887241,-87.638065 41.886547,-87.635813 41.887378,-87.635445 41.887425,-87.633971 41.887513,-87.634049 41.890785,-87.634153 41.894793,-87.634203 41.896596,-87.634291 41.898982,-87.637262 41.898944,-87.639984 41.898905,-87.63989 41.896515,-87.64004 41.896513,-87.640028 41.895517,-87.642977 41.895551,-87.643004 41.896475,-87.644139 41.896456))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1070,
"boundary": "POLYGON((-87.6444 41.940045,-87.644369 41.939146,-87.644353 41.93869,-87.644279 41.936513,-87.641858 41.936554,-87.639434 41.936587,-87.638702 41.936592,-87.636851 41.936618,-87.633784 41.93682,-87.631915470481 41.936926086533,-87.633276905034 41.942292901003,-87.638118 41.940553,-87.639554 41.940138,-87.641385 41.940089,-87.6444 41.940045))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 716,
"boundary": "POLYGON((-87.644886 41.932801,-87.644274 41.931338,-87.643898 41.930703,-87.642924 41.929662,-87.642232 41.928533,-87.641807 41.927813,-87.639228 41.928665,-87.639265 41.929696,-87.640634 41.929242,-87.641467 41.930661,-87.640869 41.930856,-87.641786 41.93236,-87.641343 41.93287,-87.644886 41.932801))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2099,
"boundary": "POLYGON((-87.647599 41.88866,-87.64736 41.881778,-87.646107 41.881793,-87.64572 41.882026,-87.642661 41.881838,-87.641193 41.88186,-87.638248 41.881898,-87.638161 41.88319,-87.637864 41.884874,-87.637778 41.885722,-87.638065 41.886547,-87.63871 41.887241,-87.639356 41.889081,-87.644334 41.889034,-87.644322 41.888554,-87.645759 41.88802,-87.647599 41.88866))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1970,
"boundary": "POLYGON((-87.648761 41.925454,-87.648697 41.92363,-87.648633 41.921817,-87.648575 41.919994,-87.648509 41.91818,-87.647312 41.918194,-87.64489 41.918235,-87.643667 41.918253,-87.643728 41.920072,-87.643787 41.921888,-87.643927 41.925532,-87.648761 41.925454))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2618,
"boundary": "POLYGON((-87.649141 41.936379,-87.649117 41.935563,-87.649108 41.935458,-87.649012 41.93272,-87.646581 41.932768,-87.644886 41.932801,-87.644265 41.934252,-87.644224 41.934875,-87.644279 41.936513,-87.649141 41.936379))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1069,
"boundary": "POLYGON((-87.649267 41.939981,-87.649216 41.938485,-87.649141 41.936379,-87.644279 41.936513,-87.644353 41.93869,-87.644369 41.939146,-87.6444 41.940045,-87.649267 41.939981))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1809,
"boundary": "POLYGON((-87.653613 41.925376,-87.653488 41.921738,-87.653428 41.919923,-87.653367 41.918105,-87.650939 41.918143,-87.649129 41.918171,-87.648509 41.91818,-87.648575 41.919994,-87.648633 41.921817,-87.648697 41.92363,-87.648761 41.925454,-87.65286 41.925389,-87.653613 41.925376))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1073,
"boundary": "POLYGON((-87.653859 41.932638,-87.653703 41.928101,-87.653613 41.925376,-87.65286 41.925389,-87.648761 41.925454,-87.648873 41.928659,-87.648889 41.929084,-87.649012 41.93272,-87.653859 41.932638))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1808,
"boundary": "POLYGON((-87.654272 41.945396,-87.654245 41.944466,-87.65422 41.943571,-87.654106 41.939912,-87.649267 41.939981,-87.649358 41.942709,-87.649375 41.943616,-87.649404 41.944529,-87.64943 41.945461,-87.654272 41.945396))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1068,
"boundary": "POLYGON((-87.658969 41.939838,-87.658807 41.935279,-87.658776 41.934376,-87.65871 41.932556,-87.653859 41.932638,-87.653951 41.935358,-87.653983 41.936271,-87.654106 41.939912,-87.656537 41.939874,-87.658969 41.939838))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1074,
"boundary": "POLYGON((-87.663568 41.93248,-87.663443 41.928848,-87.66223 41.928868,-87.662169 41.927052,-87.663383 41.927032,-87.663327 41.925218,-87.658453 41.925292,-87.658516 41.927108,-87.658532 41.927767,-87.65871 41.932556,-87.661129 41.932518,-87.663568 41.93248))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2617,
"boundary": "POLYGON((-87.663821 41.939765,-87.663655 41.935208,-87.663624 41.934297,-87.663568 41.93248,-87.661129 41.932518,-87.65871 41.932556,-87.658776 41.934376,-87.658807 41.935279,-87.658969 41.939838,-87.661084 41.9398,-87.6614 41.939799,-87.663821 41.939765))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 739,
"boundary": "POLYGON((-87.664214 41.916968,-87.663356 41.915485,-87.661831 41.915862,-87.658445 41.914465,-87.656873 41.910785,-87.653107 41.91084,-87.651106 41.910874,-87.649501 41.9109,-87.648272 41.91092,-87.648284 41.911386,-87.648361 41.913827,-87.648509 41.91818,-87.649129 41.918171,-87.650939 41.918143,-87.653367 41.918105,-87.658219 41.918034,-87.65828 41.917194,-87.664214 41.916968))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 660,
"boundary": "POLYGON((-87.667069 41.888852,-87.666945 41.883298,-87.666898 41.881952,-87.666803 41.881455,-87.666084 41.881462,-87.657143 41.881652,-87.65436 41.8817,-87.64736 41.881778,-87.647599 41.88866,-87.647622 41.889049,-87.648265 41.889042,-87.654567 41.888978,-87.656974 41.888948,-87.658921 41.88895,-87.662211 41.889005,-87.66281 41.888718,-87.667069 41.888852))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 854,
"boundary": "POLYGON((-87.667495 41.903346,-87.667444 41.901524,-87.667392 41.899708,-87.667367 41.898798,-87.667292 41.896074,-87.662405 41.89615,-87.662479 41.89888,-87.66253 41.900823,-87.662583 41.901526,-87.662628 41.903409,-87.666485 41.903358,-87.667495 41.903346))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1714,
"boundary": "POLYGON((-87.667802 41.914329,-87.667754 41.912907,-87.667692 41.91063,-87.665192 41.910665,-87.662727 41.907056,-87.662628 41.903409,-87.662583 41.901526,-87.66253 41.900823,-87.662479 41.89888,-87.662405 41.89615,-87.658445 41.896212,-87.65751 41.896228,-87.647745 41.896399,-87.647622 41.889049,-87.647599 41.88866,-87.645759 41.88802,-87.644322 41.888554,-87.644334 41.889034,-87.639356 41.889081,-87.641927 41.892506,-87.643886 41.894,-87.644139 41.896456,-87.645274 41.897714,-87.647829 41.897961,-87.651763 41.899975,-87.655118 41.900646,-87.657391 41.903529,-87.658173 41.904987,-87.657454 41.908832,-87.65865 41.910125,-87.656873 41.910785,-87.658445 41.914465,-87.661831 41.915862,-87.663356 41.915485,-87.665232 41.91486,-87.665905 41.914729,-87.667437 41.914281,-87.667802 41.914329))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 594,
"boundary": "POLYGON((-87.668394 41.932404,-87.668209 41.926964,-87.668146 41.925152,-87.663327 41.925218,-87.663383 41.927032,-87.662169 41.927052,-87.66223 41.928868,-87.663443 41.928848,-87.663568 41.93248,-87.668394 41.932404))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 604,
"boundary": "POLYGON((-87.672381 41.903267,-87.672282 41.899633,-87.672173 41.895992,-87.667292 41.896074,-87.667367 41.898798,-87.667392 41.899708,-87.667444 41.901524,-87.667495 41.903346,-87.669944 41.903306,-87.672381 41.903267))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1067,
"boundary": "POLYGON((-87.67344 41.939507,-87.673541 41.935985,-87.673426 41.932342,-87.668394 41.932404,-87.668461 41.934227,-87.668662 41.939697,-87.67344 41.939633,-87.67344 41.939507))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2679,
"boundary": "POLYGON((-87.674403 41.925069,-87.673933 41.923993,-87.671333 41.92239,-87.66785 41.921576,-87.667296 41.920698,-87.664214 41.916968,-87.65828 41.917194,-87.658219 41.918034,-87.658279 41.919847,-87.658335 41.921661,-87.658453 41.925292,-87.663327 41.925218,-87.668146 41.925152,-87.674403 41.925069))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 855,
"boundary": "POLYGON((-87.677258 41.903191,-87.677156 41.899551,-87.677052 41.895912,-87.672173 41.895992,-87.672282 41.899633,-87.672381 41.903267,-87.67382 41.903245,-87.677258 41.903191))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1274,
"boundary": "POLYGON((-87.677899 41.925026,-87.677752 41.921398,-87.677731 41.920797,-87.677704 41.920042,-87.677622 41.917758,-87.672762 41.91785,-87.672714 41.91603,-87.672701 41.91557,-87.672667 41.91425,-87.670231 41.914292,-87.667802 41.914329,-87.667437 41.914281,-87.665905 41.914729,-87.665232 41.91486,-87.663356 41.915485,-87.664214 41.916968,-87.667296 41.920698,-87.66785 41.921576,-87.671333 41.92239,-87.673933 41.923993,-87.674403 41.925069,-87.677899 41.925026))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2614,
"boundary": "POLYGON((-87.678355 41.939573,-87.678237 41.93593,-87.678135 41.932285,-87.673426 41.932342,-87.673541 41.935985,-87.67344 41.939507,-87.678355 41.939573))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2524,
"boundary": "POLYGON((-87.681949 41.895827,-87.681925 41.894918,-87.681844 41.892188,-87.681768 41.889642,-87.681752 41.889099,-87.68174 41.888641,-87.676846 41.88872,-87.676874 41.889726,-87.676929 41.891548,-87.676974 41.893173,-87.677052 41.895912,-87.6795 41.895868,-87.681949 41.895827))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 659,
"boundary": "POLYGON((-87.683726 41.924954,-87.683871 41.924952,-87.682733 41.924145,-87.68264 41.921313,-87.682631 41.921082,-87.682519 41.917659,-87.680096 41.917707,-87.680014 41.91467,-87.677555 41.914716,-87.677622 41.917758,-87.677704 41.920042,-87.677731 41.920797,-87.677752 41.921398,-87.677899 41.925026,-87.683726 41.924954))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1063,
"boundary": "POLYGON((-87.685521 41.934932,-87.68563 41.933871,-87.683285 41.93327,-87.682661 41.932231,-87.678135 41.932285,-87.678237 41.93593,-87.678355 41.939573,-87.683201 41.939513,-87.683109 41.935872,-87.685521 41.934932))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 605,
"boundary": "POLYGON((-87.686843 41.895743,-87.686738 41.89211,-87.686623 41.888527,-87.685993 41.888572,-87.68174 41.888641,-87.681752 41.889099,-87.681768 41.889642,-87.681844 41.892188,-87.681925 41.894918,-87.681949 41.895827,-87.686843 41.895743))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2135,
"boundary": "POLYGON((-87.687642 41.924901,-87.687521 41.920984,-87.68741 41.917568,-87.684959 41.917615,-87.682519 41.917659,-87.682631 41.921082,-87.68264 41.921313,-87.682733 41.924145,-87.683871 41.924952,-87.685209 41.924932,-87.687642 41.924901))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1803,
"boundary": "POLYGON((-87.688243 41.94274,-87.688173 41.939461,-87.683201 41.939513,-87.683301 41.943157,-87.688153 41.943098,-87.688243 41.94274))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2523,
"boundary": "POLYGON((-87.691952 41.902968,-87.691885 41.900241,-87.691863 41.89933,-87.691839 41.898422,-87.689351 41.897535,-87.691818 41.897513,-87.691773 41.895702,-87.686843 41.895743,-87.686936 41.899379,-87.68696 41.900293,-87.687006 41.902087,-87.687027 41.903016,-87.689488 41.902993,-87.691952 41.902968))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2685,
"boundary": "POLYGON((-87.692274 41.884318,-87.692231 41.882941,-87.692162 41.881106,-87.691505 41.881113,-87.686431 41.881162,-87.68396 41.881159,-87.681529 41.881198,-87.676642 41.881314,-87.67669 41.883147,-87.676846 41.88872,-87.68174 41.888641,-87.685993 41.888572,-87.686623 41.888527,-87.687092 41.888415,-87.690304 41.887674,-87.692274 41.884318))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2134,
"boundary": "POLYGON((-87.692843 41.924852,-87.692712 41.920065,-87.691332 41.919228,-87.688596 41.917563,-87.68741 41.917568,-87.687521 41.920984,-87.687642 41.924901,-87.689397 41.924883,-87.692528 41.924855,-87.692843 41.924852))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 424,
"boundary": "POLYGON((-87.696703 41.895654,-87.696671 41.894333,-87.691668 41.892332,-87.691474 41.888371,-87.687092 41.888415,-87.686623 41.888527,-87.686738 41.89211,-87.686843 41.895743,-87.691773 41.895702,-87.694237 41.895668,-87.696703 41.895654))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 856,
"boundary": "POLYGON((-87.696947 41.905664,-87.696879 41.902925,-87.696836 41.901107,-87.696815 41.900199,-87.696791 41.899283,-87.696703 41.895654,-87.694237 41.895668,-87.691773 41.895702,-87.691818 41.897513,-87.689351 41.897535,-87.691839 41.898422,-87.691863 41.89933,-87.691885 41.900241,-87.691952 41.902968,-87.692022 41.905712,-87.694486 41.905686,-87.696947 41.905664))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2521,
"boundary": "POLYGON((-87.697034 41.910227,-87.696947 41.905664,-87.694486 41.905686,-87.692022 41.905712,-87.69211 41.910277,-87.694542 41.910249,-87.697034 41.910227))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 721,
"boundary": "POLYGON((-87.697094 41.913907,-87.697034 41.910227,-87.694542 41.910249,-87.69211 41.910277,-87.692203 41.91395,-87.697094 41.913907))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 416,
"boundary": "POLYGON((-87.697823 41.939393,-87.697725 41.935743,-87.697683 41.934457,-87.697683 41.934216,-87.697618 41.932096,-87.693964 41.932124,-87.692773 41.93213,-87.687904 41.93217,-87.687986 41.936062,-87.689974 41.936659,-87.692462 41.939427,-87.693007 41.939423,-87.697823 41.939393))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 844,
"boundary": "POLYGON((-87.700277 41.939377,-87.699909 41.934313,-87.700123 41.933901,-87.700073 41.932079,-87.697618 41.932096,-87.697683 41.934216,-87.697683 41.934457,-87.697725 41.935743,-87.697823 41.939393,-87.700277 41.939377))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 850,
"boundary": "POLYGON((-87.701981 41.913938,-87.701979 41.913885,-87.701866 41.910172,-87.699091 41.910189,-87.697034 41.910227,-87.697094 41.913907,-87.697097 41.914004,-87.699193 41.913941,-87.701981 41.913938))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 420,
"boundary": "POLYGON((-87.702089 41.917445,-87.701981 41.913938,-87.699193 41.913941,-87.697097 41.914004,-87.697201 41.917489,-87.699994 41.917461,-87.702089 41.917445))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 419,
"boundary": "POLYGON((-87.702318 41.924763,-87.702212 41.921503,-87.702089 41.917445,-87.699994 41.917461,-87.697201 41.917489,-87.697219 41.918142,-87.69732 41.921689,-87.697362 41.922907,-87.697413 41.924807,-87.698636 41.924796,-87.702318 41.924763))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2130,
"boundary": "POLYGON((-87.702522 41.932059,-87.702421 41.928424,-87.702347 41.925968,-87.702318 41.924763,-87.698636 41.924796,-87.697413 41.924807,-87.697515 41.928466,-87.697523 41.928713,-87.697618 41.932096,-87.700073 41.932079,-87.702522 41.932059))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 421,
"boundary": "POLYGON((-87.706765 41.910714,-87.706877 41.910147,-87.701866 41.910172,-87.701979 41.913885,-87.706864 41.913828,-87.706859 41.913671,-87.706765 41.910714))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 847,
"boundary": "POLYGON((-87.706976 41.917402,-87.706864 41.913828,-87.701979 41.913885,-87.701981 41.913938,-87.702089 41.917445,-87.706976 41.917402))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 851,
"boundary": "POLYGON((-87.707 41.909855,-87.706903 41.906477,-87.70679 41.90285,-87.706731 41.901006,-87.706674 41.899195,-87.701951 41.899238,-87.701718 41.89924,-87.696791 41.899283,-87.696815 41.900199,-87.696836 41.901107,-87.696879 41.902925,-87.696947 41.905664,-87.697034 41.910227,-87.699091 41.910189,-87.701866 41.910172,-87.706877 41.910147,-87.707 41.909855))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2127,
"boundary": "POLYGON((-87.707822 41.946631,-87.707716 41.942733,-87.707625 41.939928,-87.707698 41.939331,-87.702725 41.939363,-87.701502 41.939368,-87.700277 41.939377,-87.697823 41.939393,-87.693007 41.939423,-87.692462 41.939427,-87.693508 41.940196,-87.695314 41.942838,-87.696208 41.946696,-87.698031 41.946683,-87.702926 41.946654,-87.70415 41.946651,-87.707822 41.946631))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 417,
"boundary": "POLYGON((-87.707646 41.928729,-87.707895 41.928365,-87.707313 41.92797,-87.707219 41.924716,-87.702318 41.924763,-87.702347 41.925968,-87.702421 41.928424,-87.702522 41.932059,-87.704981 41.932041,-87.706816 41.932031,-87.707427 41.932029,-87.70745 41.929225,-87.707646 41.928729))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 740,
"boundary": "POLYGON((-87.711436 41.895507,-87.711326 41.891843,-87.711219 41.888113,-87.706335 41.888175,-87.701412 41.888235,-87.691474 41.888371,-87.691668 41.892332,-87.696671 41.894333,-87.696703 41.895654,-87.702204 41.895595,-87.704134 41.895579,-87.706556 41.895553,-87.711436 41.895507))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 1977,
"boundary": "POLYGON((-87.617738 41.893447,-87.617715 41.892642,-87.617693 41.891847,-87.617652 41.890517,-87.614235 41.890552,-87.613171924982 41.890554955988,-87.611518 41.89059,-87.611395 41.889518,-87.609548 41.889612,-87.609685 41.893177,-87.602267 41.893302,-87.602369 41.896335,-87.610092 41.896367,-87.612041 41.893713,-87.614276 41.893642,-87.614516944392 41.89397688505,-87.61463 41.893519,-87.617738 41.893447))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 389,
"boundary": "POLYGON((-87.624243 41.896734,-87.624279 41.896529,-87.624213 41.893335,-87.620275 41.893406,-87.617738 41.893447,-87.61463 41.893519,-87.614516944392 41.89397688505,-87.616537093402 41.896784660305,-87.62037 41.896785,-87.621831 41.896769,-87.624243 41.896734))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2112,
"boundary": "POLYGON((-87.628004 41.887506,-87.627911 41.884491,-87.627806 41.882042,-87.624296 41.882119,-87.623009 41.880844,-87.622896 41.880846,-87.616505507393 41.880913535074,-87.616537 41.882396,-87.616262192644 41.882494174703,-87.613178 41.883596,-87.613122149372 41.884366950757,-87.613069428317 41.88509470153,-87.612864813987 41.887919156298,-87.612862 41.887958,-87.613110817969 41.888736045065,-87.617414 41.888454,-87.620464 41.888585,-87.622977 41.889045,-87.624355 41.88893,-87.62533 41.888849,-87.628004 41.887506))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 3007,
"boundary": "POLYGON((-87.633121 41.907696,-87.633062 41.905755,-87.633002 41.903877,-87.630716 41.903914,-87.629986 41.903923,-87.628678 41.903942,-87.62871 41.904854,-87.628743 41.905819,-87.628775 41.906764,-87.628785 41.907799,-87.630106 41.907857,-87.633121 41.907696))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 390,
"boundary": "POLYGON((-87.634203 41.896596,-87.634153 41.894793,-87.634049 41.890785,-87.633971 41.887513,-87.629537 41.887508,-87.629717 41.894052,-87.629724 41.894854,-87.629775 41.896656,-87.631245 41.896636,-87.634203 41.896596))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 388,
"boundary": "POLYGON((-87.638592 41.911115,-87.638484 41.907601,-87.638453 41.906634,-87.63845 41.90652,-87.63837 41.903793,-87.637445 41.903804,-87.637016 41.903811,-87.634478 41.903853,-87.633002 41.903877,-87.633062 41.905755,-87.633121 41.907696,-87.63323 41.911164,-87.634711 41.91116,-87.635701 41.91115,-87.636663 41.91114,-87.637624 41.911131,-87.638592 41.911115))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 19,
"boundary": "POLYGON((-87.641858 41.936554,-87.641803 41.934982,-87.641388 41.934305,-87.641374 41.933389,-87.641343 41.93287,-87.639327 41.93292,-87.637955 41.932932,-87.638003 41.934372,-87.637834 41.936105,-87.638702 41.936592,-87.639434 41.936587,-87.641858 41.936554))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2505,
"boundary": "POLYGON((-87.643092 41.900413,-87.642929 41.896476,-87.643004 41.896475,-87.642977 41.895551,-87.640028 41.895517,-87.64004 41.896513,-87.63989 41.896515,-87.639984 41.898905,-87.640044 41.900468,-87.643092 41.900413))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 113,
"boundary": "POLYGON((-87.64322 41.903716,-87.643092 41.900413,-87.640044 41.900468,-87.639984 41.898905,-87.637262 41.898944,-87.634291 41.898982,-87.634382 41.901325,-87.634442 41.902884,-87.634478 41.903853,-87.637016 41.903811,-87.637445 41.903804,-87.63837 41.903793,-87.64322 41.903716))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 23,
"boundary": "POLYGON((-87.643431 41.911018,-87.643299 41.906447,-87.64322 41.903716,-87.63837 41.903793,-87.63845 41.90652,-87.638453 41.906634,-87.638484 41.907601,-87.638592 41.911115,-87.641017 41.911076,-87.643431 41.911018))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 387,
"boundary": "POLYGON((-87.643667 41.918253,-87.64355 41.914625,-87.642937 41.914634,-87.641744 41.914653,-87.641135 41.914661,-87.638704 41.914676,-87.638762 41.91651,-87.638816 41.918322,-87.641246 41.918286,-87.643667 41.918253))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 20,
"boundary": "POLYGON((-87.644217 41.92805,-87.644026 41.927326,-87.643992 41.926727,-87.643927 41.925532,-87.641502 41.925569,-87.640479 41.925585,-87.641336 41.92701,-87.641807 41.927813,-87.642232 41.928533,-87.644217 41.92805))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2504,
"boundary": "POLYGON((-87.648509 41.91818,-87.648361 41.913827,-87.648284 41.911386,-87.648272 41.91092,-87.647076 41.910937,-87.643431 41.911018,-87.64349 41.91281,-87.643525 41.913898,-87.64355 41.914625,-87.643667 41.918253,-87.64489 41.918235,-87.647312 41.918194,-87.648509 41.91818))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2502,
"boundary": "POLYGON((-87.649012 41.93272,-87.648889 41.929084,-87.648873 41.928659,-87.648761 41.925454,-87.643927 41.925532,-87.643992 41.926727,-87.644026 41.927326,-87.644217 41.92805,-87.642232 41.928533,-87.642924 41.929662,-87.643898 41.930703,-87.644274 41.931338,-87.644886 41.932801,-87.646581 41.932768,-87.649012 41.93272))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2143,
"boundary": "POLYGON((-87.65751 41.896228,-87.657385 41.895227,-87.657465 41.894408,-87.657444 41.893498,-87.657434 41.893069,-87.657348 41.889389,-87.656974 41.888948,-87.654567 41.888978,-87.648265 41.889042,-87.647622 41.889049,-87.647745 41.896399,-87.65751 41.896228))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 22,
"boundary": "POLYGON((-87.658453 41.925292,-87.658335 41.921661,-87.658279 41.919847,-87.658219 41.918034,-87.653367 41.918105,-87.653428 41.919923,-87.653488 41.921738,-87.653613 41.925376,-87.658453 41.925292))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 3081,
"boundary": "POLYGON((-87.65865 41.910125,-87.657454 41.908832,-87.658173 41.904987,-87.657391 41.903529,-87.655118 41.900646,-87.651763 41.899975,-87.647829 41.897961,-87.645274 41.897714,-87.644139 41.896456,-87.643004 41.896475,-87.642929 41.896476,-87.643092 41.900413,-87.64322 41.903716,-87.643299 41.906447,-87.643431 41.911018,-87.647076 41.910937,-87.648272 41.91092,-87.649501 41.9109,-87.651106 41.910874,-87.653107 41.91084,-87.656873 41.910785,-87.65865 41.910125))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 21,
"boundary": "POLYGON((-87.65871 41.932556,-87.658532 41.927767,-87.658516 41.927108,-87.658453 41.925292,-87.653613 41.925376,-87.653703 41.928101,-87.653859 41.932638,-87.65871 41.932556))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 375,
"boundary": "POLYGON((-87.659122 41.945316,-87.659073 41.943493,-87.658969 41.939838,-87.656537 41.939874,-87.654106 41.939912,-87.65422 41.943571,-87.654245 41.944466,-87.65523 41.945605,-87.656699 41.945351,-87.659122 41.945316))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 892,
"boundary": "POLYGON((-87.662405 41.89615,-87.662354 41.894328,-87.662328 41.893416,-87.662265 41.891028,-87.662233 41.889943,-87.662211 41.889005,-87.658921 41.88895,-87.656974 41.888948,-87.657348 41.889389,-87.657434 41.893069,-87.657444 41.893498,-87.657465 41.894408,-87.657385 41.895227,-87.65751 41.896228,-87.658445 41.896212,-87.662405 41.89615))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 803,
"boundary": "POLYGON((-87.667292 41.896074,-87.667237 41.894257,-87.667212 41.893343,-87.667143 41.890977,-87.667112 41.889887,-87.667069 41.888852,-87.66281 41.888718,-87.662211 41.889005,-87.662233 41.889943,-87.662265 41.891028,-87.662328 41.893416,-87.662354 41.894328,-87.662405 41.89615,-87.667292 41.896074))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 36,
"boundary": "POLYGON((-87.667692 41.91063,-87.667625 41.908358,-87.66759 41.907007,-87.667542 41.905108,-87.667513 41.904017,-87.667495 41.903346,-87.666485 41.903358,-87.662628 41.903409,-87.662727 41.907056,-87.665192 41.910665,-87.667692 41.91063))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 18,
"boundary": "POLYGON((-87.668662 41.939697,-87.668461 41.934227,-87.668394 41.932404,-87.663568 41.93248,-87.663624 41.934297,-87.663655 41.935208,-87.663821 41.939765,-87.666242 41.93973,-87.668662 41.939697))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2999,
"boundary": "POLYGON((-87.668763 41.943343,-87.668662 41.939697,-87.666242 41.93973,-87.663821 41.939765,-87.663917 41.943418,-87.668763 41.943343))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 891,
"boundary": "POLYGON((-87.672173 41.895992,-87.67209 41.893262,-87.67201 41.890526,-87.671989 41.889806,-87.671961 41.8888,-87.667069 41.888852,-87.667112 41.889887,-87.667143 41.890977,-87.667212 41.893343,-87.667237 41.894257,-87.667292 41.896074,-87.672173 41.895992))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 17,
"boundary": "POLYGON((-87.67356 41.943277,-87.673515 41.941455,-87.67344 41.939633,-87.668662 41.939697,-87.668763 41.943343,-87.67356 41.943277))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2142,
"boundary": "POLYGON((-87.677052 41.895912,-87.676974 41.893173,-87.676929 41.891548,-87.676874 41.889726,-87.676846 41.88872,-87.671961 41.8888,-87.671989 41.889806,-87.67201 41.890526,-87.67209 41.893262,-87.672173 41.895992,-87.677052 41.895912))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 37,
"boundary": "POLYGON((-87.68214 41.903107,-87.682119 41.902172,-87.682093 41.901283,-87.682046 41.899466,-87.681949 41.895827,-87.6795 41.895868,-87.677052 41.895912,-87.677156 41.899551,-87.677258 41.903191,-87.6797 41.903147,-87.68214 41.903107))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2503,
"boundary": "POLYGON((-87.682661 41.932231,-87.679577 41.928349,-87.675094 41.926748,-87.674403 41.925069,-87.668146 41.925152,-87.668209 41.926964,-87.668394 41.932404,-87.673426 41.932342,-87.678135 41.932285,-87.682661 41.932231))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2871,
"boundary": "POLYGON((-87.687027 41.903016,-87.687006 41.902087,-87.68696 41.900293,-87.686936 41.899379,-87.686843 41.895743,-87.681949 41.895827,-87.682046 41.899466,-87.682093 41.901283,-87.682119 41.902172,-87.68214 41.903107,-87.68458 41.903061,-87.687027 41.903016))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 3111,
"boundary": "POLYGON((-87.692773 41.93213,-87.692738 41.931393,-87.692658 41.928508,-87.692591 41.926671,-87.692528 41.924855,-87.689397 41.924883,-87.687642 41.924901,-87.685209 41.924932,-87.683871 41.924952,-87.683726 41.924954,-87.677899 41.925026,-87.674403 41.925069,-87.675094 41.926748,-87.679577 41.928349,-87.682661 41.932231,-87.683285 41.93327,-87.68563 41.933871,-87.687404 41.935777,-87.687986 41.936062,-87.687904 41.93217,-87.692773 41.93213))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 116,
"boundary": "POLYGON((-87.696809 41.950078,-87.696208 41.946696,-87.695314 41.942838,-87.693508 41.940196,-87.692462 41.939427,-87.689974 41.936659,-87.687986 41.936062,-87.687404 41.935777,-87.68563 41.933871,-87.685521 41.934932,-87.683109 41.935872,-87.683201 41.939513,-87.688173 41.939461,-87.688243 41.94274,-87.688153 41.943098,-87.688258 41.946731,-87.688361 41.950379,-87.688467 41.954032,-87.692068 41.954007,-87.694446 41.953994,-87.696809 41.950078))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 107,
"boundary": "POLYGON((-87.697201 41.917489,-87.697097 41.914004,-87.697094 41.913907,-87.692203 41.91395,-87.687316 41.913995,-87.68741 41.917568,-87.688596 41.917563,-87.692306 41.917531,-87.697201 41.917489))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2517,
"boundary": "POLYGON((-87.697413 41.924807,-87.697362 41.922907,-87.69732 41.921689,-87.697219 41.918142,-87.697201 41.917489,-87.692306 41.917531,-87.688596 41.917563,-87.691332 41.919228,-87.692712 41.920065,-87.692843 41.924852,-87.697413 41.924807))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 38,
"boundary": "POLYGON((-87.701881 41.896418,-87.702204 41.895595,-87.696703 41.895654,-87.696791 41.899283,-87.701718 41.89924,-87.701951 41.899238,-87.701881 41.896418))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 2868,
"boundary": "POLYGON((-87.707219 41.924716,-87.707113 41.921452,-87.707081 41.920663,-87.706976 41.917402,-87.702089 41.917445,-87.702212 41.921503,-87.702318 41.924763,-87.707219 41.924716))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 802,
"boundary": "POLYGON((-87.707698 41.939331,-87.707664 41.938886,-87.707577 41.937514,-87.707529 41.935698,-87.707476 41.933876,-87.707427 41.932029,-87.706816 41.932031,-87.704981 41.932041,-87.702522 41.932059,-87.700073 41.932079,-87.700123 41.933901,-87.699909 41.934313,-87.700277 41.939377,-87.701502 41.939368,-87.702725 41.939363,-87.707698 41.939331))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
},
{
"id": 3113,
"boundary": "POLYGON((-87.711675 41.902788,-87.714583 41.90277,-87.711551 41.900148,-87.713455 41.901015,-87.714057 41.90095,-87.713997 41.89913,-87.713873 41.895483,-87.711436 41.895507,-87.706556 41.895553,-87.704134 41.895579,-87.702204 41.895595,-87.701881 41.896418,-87.701951 41.899238,-87.706674 41.899195,-87.706731 41.901006,-87.70679 41.90285,-87.711675 41.902788))",
"value": null,
"airbnb_coc": 0,
"border_color": "f7b5a7",
"color": "f06b50",
"color_level": 1
}
]
}
}
This endpoint retrieves the investment performance heatmap for a specific area based on geographical coordinates.
HTTP Request
GET https://api.mashvisor.com/v1.1/client/search/heatmap
Request Headers
| Parameter | Value |
|---|---|
| x-api-key | User Authentication Header |
Query Parameters
| Parameter | Value | Default | Description |
|---|---|---|---|
| state* | String | The state to search in. e.g: CA | |
| sw_lat | Double | To search to a specific geo area, south west point latitude. e.g: 33.76436731683163 | |
| sw_lng | Double | To search to a specific geo area, south west point longitude. e.g: -118.72974734005544 | |
| ne_lat | Double | To search to a specific geo area, north east point latitude. e.g: 34.410846062851626 | |
| ne_lng | Double | To search to a specific geo area, north east point longitude. e.g: -117.99366335568044 | |
| type | String | AirbnbCoc, or listingPrice, TraditionalCoc, OccupancyRate, AirbnbRental, TraditionalRental |
Errors
Mashvisor API uses the following error codes:
| Error Code | Meaning |
|---|---|
| 400 | Bad Request -- Your request is invalid. |
| 401 | Unauthorized -- Your API key is wrong. |
| 403 | Forbidden -- The proprety requested is hidden for administrators only. |
| 404 | Not Found -- The specified property could not be found. |
| 405 | Method Not Allowed -- You tried to access a proeprty with an invalid method. |
| 429 | Too Many Requests -- You're sending too many requests! Slow down! |
| 500 | Internal Server Error -- We had a problem with our server. Try again later. |
| 503 | Service Unavailable -- We're temporarily offline for maintenance. Please try again later. |