NAV
DEVELOPER APIS
shell ruby javascript

Introduction

Included with your Pro plan is access to the Rentometer API—a system that allows other applications to integrate Rentometer's rent analysis.

The API is in a beta release state and we welcome your feedback and suggestions.

API Credits

The cost of each endpoint is listed in the description below. A set of API Credits is included with your Pro plan.

Additional credits can be purchased on the API Settings page.

Authentication

To check your authorization and credits available, use this code:

require 'net/http'

# auth (GET )
def send_request
  uri = URI('https://www.rentometer.com/api/v1/auth?api_key=RENTOMETER_API_KEY')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## auth
curl "https://www.rentometer.com/api/v1/auth?api_key=RENTOMETER_API_KEY"
// auth (GET https://www.rentometer.com/api/v1/auth)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/auth",
    type: "GET",
    data: {
        "api_key": "RENTOMETER_API_KEY",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});
## Response JSON:
{
  "authorized": true,
  "account_email": "user@email.com",
  "credits_remaining": 7937,
  "pro_report_credits_remaining": 448
}

Make sure to replace RENTOMETER_API_KEY with your API key.

Rentometer uses API keys to allow access to the API. You can get a Rentometer API key at the API Settings page, which is accessible after establishing a Pro subscription and accepting the terms of use.

Rentometer expects the API key to be included in all API requests to the server. It is not necessary to call the auth endpoint to use the API. It is provided to make it easier to work with some integration services (such as Zapier).

It can also be useful if you want to know how many credits remain on your account.

HTTP Request

GET https://www.rentometer.com/api/v1/auth

Query Parameters

Parameter Description
api_key Your API Key

Response JSON

Parameter Description
authorized Always returns true for a valid API key.
account_email Email address associated with your API key.
credits_remaining Number of API Credits remaining on your account.
pro_report_credits_remaining Number of Pro Report Credits remaining on your account.

Cost

0 API Credits

Rent Summary (QuickView)

To get a rent summary using an Address, use this code:

require 'net/http'

# Rent Summary (GET https://www.rentometer.com/api/v1/summary)
def send_request
  uri = URI('https://www.rentometer.com/api/v1/summary?api_key=RENTOMETER_API_KEY&address=15%20broad%20st.,%20boston,%20ma&bedrooms=2&baths=1.5%2B&building_type=house')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Rent Summary
curl "https://www.rentometer.com/api/v1/summary?api_key=RENTOMETER_API_KEY&address=15%20broad%20st.,%20boston,%20ma&bedrooms=2&baths=1.5%2B&building_type=house"
// Rent Summary (GET https://www.rentometer.com/api/v1/summary)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/summary",
    type: "GET",
    data: {
        "api_key": "RENTOMETER_API_KEY",
        "address": "15 broad st., boston, ma",
        "bedrooms": "2",
        "baths": "1.5+",
        "building_type": "house",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});
## Response JSON:
{
  "address": "15 Broad Street, Boston, Massachusetts 02109",
  "latitude": "42.358729",
  "longitude": "-71.054801",
  "bedrooms": 2,
  "baths": "1.5+",
  "building_type": "House",
  "look_back_days": 365,
  "mean": 2990,
  "median": 2950,
  "min": 2500,
  "max": 3560,
  "percentile_25": 2666,
  "percentile_75": 3315,
  "std_dev": 481,
  "samples": 4,
  "radius_miles": 3.0,
  "quickview_url": "https://www.rentometer.com/analysis/2-bed/15-broad-street-boston-massachusetts-02109/8sGt-WiSehg/quickview",
  "credits_remaining": 7925,
  "token": "YPZ4RNaAqUw",
  "links": [
    {
      "rel": "request pro report",
      "href": "/api/v1/request_pro_report?api_key=RENTOMETER_API_KEY&token=8sGt-WiSehg"
    }
  ]
}

Make sure to replace RENTOMETER_API_KEY with your API key.

The Rent Summary endpoint, a.k.a. the QuickView, is the starting point for all rent analysis via the API. It returns a summary of the rent for a given address, along with a link to the QuickView that is viewable in a web browser.

Additionally, the QuickView endpoint returns a token that can be used to request a Pro Report.

HTTP Request

GET https://www.rentometer.com/api/v1/summary

Query Parameters

Parameter Description
api_key Your API Key
address Address describing the center point of analysis. Will be geocoded. Alternatively, provide a latitude/longitude directly. Important: Addresses often include characters that will cause an API call to fail. Be sure to URL Encode your address before including it in the request to avoid an invalid URL.
latitude Latitude of the center point of analysis. Can be provided along with longitude as an alternative to address.
longitude Longitude of the center point of analysis. Can be provided along with latitude as an alternative to address.
bedrooms Number of bedrooms. Valid values are: 0, 1, 2, 3, 4, 5, 6. Studio = 0 bedrooms
baths Optional. Restrict listings to those with only 1 bathroom or 1.5+. Valid values are: blank, "1", or "1.5+". Note: not all listings include this information and may be excluded from the results.
building_type Optional. Restrict listings to Apartments/Condos or Houses/Duplexes. Valid values are: blank, "apartment", or "house". Note: not all listings include this information and may be excluded from the results.
look_back_days Optional. Oldest listings to consider in the analysis. Default is 365 days. Must be within the range of 90 to 1460 (48 months).

Response JSON

Parameter Description
address Search address after being formatted by the geocoder. Blank if only lat/lng were provided.
latitude Latitude of the center point of analysis.
longitude Longitude of the center point of analysis.
bedrooms Number of bedrooms used in Analysis.
baths Number of bathrooms used in Analysis.
building_type Building type used in Analysis.
look_back_days Oldest listing allowed in the analysis.
mean Mean rent in the area analyzed.
median Median rent in the area analyzed.
min Minimum rent in the area analyzed.
max Maximum rent in the area analyzed.
percentile_25 25th percentile rent in the area analyzed.
percentile_75 75th percentile rent in the area analyzed.
std_dev Standard deviation of rent in the area analyzed.
samples Number of listings analyzed.
radius_miles Radius of the area analyzed. This is auto-selected based on the density of listings in the area.
quickview_url URL to the QuickView page for the analysis.
credits_remaining API credits remaining.
token Unique token for the analysis. This can be used to request a Pro Report for this analysis.
links Array of links to other API endpoints that may be of interest.

Cost

1 QuickView API Credit

Property Rents

To get a list of recently seen rentals at a given address:

require 'net/http'
require 'net/https'

# Property Rents (GET )
def send_request
  uri = URI('https://www.rentometer.com/api/v1/property_rents?api_key=DST6dvm988jFXiUZ3-ynEA&address=17036%20E%20Ohio%20Dr,%20Aurora,%20CO%2080017,%20USA&max_age=14')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Property Rents
curl "https://www.rentometer.com/api/v1/property_rents?api_key=DST6dvm988jFXiUZ3-ynEA&address=17036%20E%20Ohio%20Dr,%20Aurora,%20CO%2080017,%20USA&max_age=14"
// Property Rents (GET https://www.rentometer.com/api/v1/property_rents)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/property_rents",
    type: "GET",
    data: {
        "api_key": "DST6dvm988jFXiUZ3-ynEA",
        "address": "17036 E Ohio Dr, Aurora, CO 80017, USA",
        "max_age": "14",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});
//  Response JSON:

{
  "formatted_address": "17036 E Ohio Dr, Aurora, CO 80017, USA",
  "latitude": 39.7007242,
  "longitude": -104.7884908,
  "average_update_days": 91,
  "count": 6,
  "property_listings": [
    {
      "bedrooms": 3,
      "baths": "2.0",
      "id": 1443987,
      "price": 2841,
      "sqft": 1306,
      "last_seen": "2024-02-07",
      "price_per_sqft": 2.18
    },
    {
      "bedrooms": 2,
      "baths": "2.0",
      "id": 1252274,
      "price": 2355,
      "sqft": 1204,
      "last_seen": "2024-02-07",
      "price_per_sqft": 1.96
    },
    {
      "bedrooms": 2,
      "baths": "2.0",
      "id": 193100,
      "price": 2260,
      "sqft": 1066,
      "last_seen": "2024-02-07",
      "price_per_sqft": 2.12
    },
    {
      "bedrooms": 1,
      "baths": "1.0",
      "id": 361048,
      "price": 1903,
      "sqft": 700,
      "last_seen": "2024-02-07",
      "price_per_sqft": 2.72
    },
    {
      "bedrooms": 1,
      "baths": "1.0",
      "id": 1289853,
      "price": 2128,
      "sqft": 916,
      "last_seen": "2024-02-07",
      "price_per_sqft": 2.32
    },
    {
      "bedrooms": 1,
      "baths": "1.0",
      "id": 2958546,
      "price": 1958,
      "sqft": 825,
      "last_seen": "2024-02-07",
      "price_per_sqft": 2.37
    }
  ],
  "premium_credits_remaining": 49
}

Make sure to replace RENTOMETER_API_KEY with your API key.

The Property Rents endpoint returns recently seen listed rents at a given address. Depending on the building type, a given address may have several recent listed rents.

HTTP Request

GET https://www.rentometer.com/api/v1/property_rents

Query Parameters

Parameter Description
api_key Your API Key
address Address to be searched. Will be geocoded for consistency. Important: Addresses often include characters that will cause an API call to fail. Be sure to URL Encode your address before including it in the request to avoid an invalid URL.
max_age Optional. Look for rent listings up to this many days in the past. Max and Default is 30 days.

Response JSON

Parameter Description
formatted_address Search address after being formatted by the geocoder.
latitude Latitude of the center point of analysis.
longitude Longitude of the center point of analysis.
average_update_days The average number of days between new listings for this address.
count Number of property listings returned.
property_listings Collection of listed rents at this property. Contains:
  • id
  • bedrooms
  • baths
  • price
  • sqft
  • price_per_sqft
  • last_seen
premium_credits_remaining Premium credits remaining.

Cost

1 Premium Credit per call. If the address is not found in our system we will not charge a credit. If the address is found but no recent listings are found we will charge a credit.

Pro Reports

The Pro Report endpoint allows you to request a Pro Report for a given analysis. The Rent Summary (QuickView) endpoint returns a token that can be used to request a Pro Report, so you'll always start with a request to the Rent Summary endpoint first.

The Pro Report takes time to generate, so this endpoint operates in an asynchronous manner.

Once generated, a Pro Report can be downloaded in the form of a PDF. The report will contain your logo and other brand details. Visit the My Account page to set up your branding.

Request Pro Report

To get a Pro Report, use this code:

require 'net/http'

# Request Pro Report (GET https://www.rentometer.com/api/v1/request_pro_report)
def send_request
  uri = URI('https://www.rentometer.com/api/v1/request_pro_report?api_key=FWJf4HBOEzlKFmd6knMVnA&token=YPZ4RNaAqUw')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Request Pro Report
curl "https://www.rentometer.com/api/v1/request_pro_report?api_key=FWJf4HBOEzlKFmd6knMVnA&token=YPZ4RNaAqUw"
// Request Pro Report (GET https://www.rentometer.com/api/v1/request_pro_report)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/request_pro_report",
    type: "GET",
    data: {
        "api_key": "FWJf4HBOEzlKFmd6knMVnA",
        "token": "YPZ4RNaAqUw",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});

The above code will return a JSON response similar to this:

## HTTP/1.1 202 Accepted
{
  "status": "added to queue",
  "token": "YPZ4RNaAqUw",
  "pro_report_credits_remaining": 446,
  "links": [
    {
      "rel": "check status",
      "href": "/api/v1/pro_report_status?api_key=RENTOMETER_API_KEY&token=YPZ4RNaAqUw"
    }
  ]
}

Make sure to replace RENTOMETER_API_KEY with your API key.

This endpoint will initiate the generation of a Pro Report for the given analysis. Assuming a valid token, the endpoint will immediately return an HTTP 202: Accepted response.

The response will include a link to the endpoint that can be used to check the status of the Pro Report.

HTTP Request

GET https://www.rentometer.com/api/v1/request_pro_report

Query Parameters

Parameter Description
api_key Your API Key
token Unique token for the analysis. This can be obtained from the Rent Summary (QuickView) endpoint.

Response JSON

Parameter Description
status Status of the Pro Report. Will always be "added to queue".
pro_report_credits_remaining API credits remaining.
token Unique token for the analysis.
links Array of links to other API endpoints that may be of interest. In particular, the status endpoint can be used to check the status of the Pro Report.

Cost

1 Pro Report Credit

Pro Report Status

To check the status of a Pro Report, use this code:

require 'net/http'

# Pro Report Status (GET https://www.rentometer.com/api/v1/pro_report_status)
def send_request
  uri = URI('https://www.rentometer.com/api/v1/pro_report_status?api_key=RENTOMETER_API_KEY&token=YPZ4RNaAqUw')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Pro Report Status
curl "https://www.rentometer.com/api/v1/pro_report_status?api_key=RENTOMETER_API_KEY&token=YPZ4RNaAqUw"
// Pro Report Status (GET https://www.rentometer.com/api/v1/pro_report_status)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/pro_report_status",
    type: "GET",
    data: {
        "api_key": "RENTOMETER_API_KEY",
        "token": "YPZ4RNaAqUw",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});

This response indicates the report is still being generated:

# HTTP 202 Accepted
{
  "status": "in queue, retry later",
  "retry_after": 5,
  "token": "YPZ4RNaAqUw",
  "links": [
    {
      "rel": "check status",
      "href": "/api/v1/pro_report_status?api_key=RENTOMETER_API_KEY&token=YPZ4RNaAqUw"
    }
  ]
}

This response indicates the report is ready for download:

# HTTP 303 See Other
{
  "status": "ready",
  "token": "YPZ4RNaAqUw",
  "links": [
    {
      "rel": "download",
      "href": "https://www.rentometer.com/api/v1/download_pro_report?api_key=RENTOMETER_API_KEY&token=YPZ4RNaAqUw"
    }
  ]
}

Make sure to replace RENTOMETER_API_KEY with your API key.

This endpoint check the status of the Pro Report. Assuming a valid token, the endpoint will return either an HTTP 202: Accepted response or an HTTP 303: See Other response.

If the report is still being generated, the endpoint will return a HTTP 202: Accepted response, along with a link back to this same status endpoint. The Retry After header will be set to the recommended wait time in seconds. Building a Pro Report usually takes 5-10 seconds, but this can vary depending on the area being analyzed, how busy the service is, internet weather conditions, etc.

If the report is ready, the endpoint will return a HTTP 303: See Other response, along with a link to the download Pro Report endpoint. The Location header will be set to the download Pro Report endpoint in case your API client is able to handle the redirect automatically; otherwise you may pull the link from the response JSON.

HTTP Request

GET https://www.rentometer.com/api/v1/pro_report_status

Query Parameters

Parameter Description
api_key Your API Key
token Unique token for the analysis.

Response JSON

Parameter Description
status Status of the Pro Report.
retry-after Suggested wait time before retry in seconds.
token Unique token for the analysis.
links Array of links to other API endpoints that may be of interest.

Cost

0 API Credits

Download Pro Report

To download a Pro Report PDF, use this code:

require 'net/http'

# Download Pro Report (GET https://www.rentometer.com/api/v1/download_pro_report)
def send_request
  uri = URI('https://www.rentometer.com/api/v1/download_pro_report?api_key=FWJf4HBOEzlKFmd6knMVnA&token=YPZ4RNaAqUw')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Download Pro Report
curl "https://www.rentometer.com/api/v1/download_pro_report?api_key=FWJf4HBOEzlKFmd6knMVnA&token=YPZ4RNaAqUw"
// Download Pro Report (GET https://www.rentometer.com/api/v1/download_pro_report)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/download_pro_report",
    type: "GET",
    data: {
        "api_key": "FWJf4HBOEzlKFmd6knMVnA",
        "token": "YPZ4RNaAqUw",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});

The response will be similar to:

{
  "status": "Pro Report Ready",
  "token": "YPZ4RNaAqUw",
  "links": [
    {
      "rel": "download",
      "href": "https://rentometer-assets-dev.s3.amazonaws.com/search_pdfs/20210923-Rentometer-15_Broad_Street_Boston_Massachusetts_02109_United_States-2-bed-YPZ4RNaAqUw.pdf?1632411741"
    }
  ]
}

Make sure to replace RENTOMETER_API_KEY with your API key.

This endpoint will provide a URL where you can download a PDF version of the Pro Report.

HTTP Request

GET https://www.rentometer.com/api/v1/download_pro_report

Query Parameters

Parameter Description
api_key Your API Key
token Unique token for the analysis. This can be obtained from the Rent Summary (QuickView) endpoint.

Response JSON

Parameter Description
status Status of the Pro Report.
token Unique token for the analysis.
links Array of links to other API endpoints that may be of interest. In particular, the download link will be set to the location of the PDF file.

Cost

0 API Credits

Nearby Comps

To get a list of nearby comps using an Address, use this code:

require 'net/http'

# Nearby Comps (GET https://www.rentometer.com/api/v1/nearby_comps)
def send_request
  uri = URI('https://www.rentometer.com/api/v1/nearby_comps?api_key=RENTOMETER_API_KEY&address=15%20broad%20st.,%20boston,%20ma&bedrooms=2&baths=1')

  # Create client
  http = Net::HTTP.new(uri.host, uri.port)

  # Create Request
  req =  Net::HTTP::Get.new(uri)

  # Fetch Request
  res = http.request(req)
  puts "Response HTTP Status Code: #{res.code}"
  puts "Response HTTP Response Body: #{res.body}"
rescue StandardError => e
  puts "HTTP Request failed (#{e.message})"
end
## Nearby Comps
curl "https://www.rentometer.com/api/v1/nearby_comps?api_key=RENTOMETER_API_KEY&address=15%20broad%20st.,%20boston,%20ma&bedrooms=2&baths=1"
// Rent Summary (GET https://www.rentometer.com/api/v1/summary)

jQuery.ajax({
    url: "https://www.rentometer.com/api/v1/nearby_comps",
    type: "GET",
    data: {
        "api_key": "RENTOMETER_API_KEY",
        "address": "15 broad st., boston, ma",
        "bedrooms": "2",
        "baths": "1.5+",
        "building_type": "apartment",
    },
})
.done(function(data, textStatus, jqXHR) {
    console.log("HTTP Request Succeeded: " + jqXHR.status);
    console.log(data);
})
.fail(function(jqXHR, textStatus, errorThrown) {
    console.log("HTTP Request Failed");
})
.always(function() {
    /* ... */
});
## Example Response JSON:
{
  "search_address": "15 Broad St, Boston, MA 02109",
  "search_latitude": "42.358763",
  "search_longitude": "-71.054566",
  "count": 22,
  "nearby_properties": [
    {
      "address": "206 S Market St, Boston, MA 02109, USA",
      "latitude": 42.360184,
      "longitude": -71.055269,
      "distance": 0.14,
      "price": 850,
      "bedrooms": 2,
      "baths": "1ba",
      "property_type": "apartment",
      "last_seen": "2022-09-06",
      "sqft": 925,
      "dollar_sqft": 0.92
    },
    {
      "address": "268 Atlantic Ave #37e, Boston, MA 02110, USA",
      "latitude": 42.35838,
      "longitude": -71.051077,
      "distance": 0.24,
      "price": 3995,
      "bedrooms": 2,
      "baths": "1ba",
      "property_type": "Apartment",
      "last_seen": "2023-01-12",
      "sqft": 9999,
      "dollar_sqft": 0.4
    },
    ...
    {
      "address": "10 Wiget St, Boston, MA 02113, USA",
      "latitude": 42.363966,
      "longitude": -71.056114,
      "distance": 0.5,
      "price": 2900,
      "bedrooms": 2,
      "baths": "1ba",
      "property_type": "Apartment",
      "last_seen": "2022-07-17",
      "sqft": 999,
      "dollar_sqft": 2.9
    }
  ],
  "credits_remaining": 99826
}

Make sure to replace RENTOMETER_API_KEY with your API key.

This endpoint will provide a list of nearby comps for a given address, sorted by distance. It takes many of the same parameters as the Rent Summary (QuickView) endpoint.

HTTP Request

GET https://www.rentometer.com/api/v1/nearby_comps

Query Parameters

Parameter Description
api_key Your API Key
address Address describing the center point of analysis. Will be geocoded. Alternatively, provide a latitude/longitude directly. Important: Addresses often include characters that will cause an API call to fail. Be sure to URL Encode your address before including it in the request to avoid an invalid URL.
latitude Latitude of the center point of analysis. Can be provided along with longitude as an alternative to address.
longitude Longitude of the center point of analysis. Can be provided along with latitude as an alternative to address.
bedrooms Number of bedrooms. Valid values are: 0, 1, 2, 3, 4, 5, 6. Studio = 0 bedrooms
baths Optional. Restrict listings to those with only 1 bathroom or 1.5+. Valid values are: blank, "1", or "1.5+". Note: not all listings include this information and may be excluded from the results.
building_type Optional. Restrict listings to Apartments/Condos or Houses/Duplexes. Valid values are: blank, "apartment", or "house". Note: not all listings include this information and may be excluded from the results.

Response JSON

Parameter Description
address Search address after being formatted by the geocoder. Blank if only lat/lng were provided.
latitude Latitude of the center point of analysis.
longitude Longitude of the center point of analysis.
count Number of comps found.
nearby_properties Array of nearby properties. Each property has the following attributes:
- address
- latitude
- longitude
- distance (miles)
- price
- sqft
- dollar_sqft
- bedrooms
- baths
- property_type
- last_seen
credits_remaining API credits remaining.
token Unique token for the analysis. This can be used to request a Pro Report for this analysis.
links Array of links to other API endpoints that may be of interest.

Cost

1 Premium Credit

Errors

The Rentometer API uses the following error codes:

Error Code Meaning
400 Bad Request -- Your request is invalid.
401 Unauthorized -- Your API key is wrong.
402 Payment Required -- You need to purchase additional API Credits.
404 Not Found -- We could not find what you were looking for.
422 Your request couldn't be processed. See errors in JSON response for more details.
429 Too Many Requests -- You're making requests too frequently. If you see this error frequently, please contact us to discuss your needs.
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.